FROM node:22-alpine

WORKDIR /app

COPY package.json package-lock.json ./
COPY packages/device-protocol-contract ./packages/device-protocol-contract
COPY packages/arusnavi-b2-adapter ./packages/arusnavi-b2-adapter
COPY services/device-control-core ./services/device-control-core
COPY services/device-gateway/package.json ./services/device-gateway/package.json
COPY services/device-edge-relay/package.json ./services/device-edge-relay/package.json

RUN npm ci --omit=dev --ignore-scripts

USER node

CMD ["node", "services/device-control-core/src/server.mjs"]
