Edit: /opt/mawid/apps/api/Dockerfile (659B)
# Single-stage build, intentionally boring for the pilot (PROJECT_PLAN §2).
FROM node:22-alpine
RUN corepack enable
WORKDIR /app
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml tsconfig.base.json ./
COPY apps/api/package.json apps/api/
COPY packages/db/package.json packages/db/
COPY packages/shared/package.json packages/shared/
RUN pnpm install --frozen-lockfile --filter @mawid/api... --filter @mawid/db --filter @mawid/shared
COPY packages ./packages
COPY apps/api ./apps/api
RUN pnpm --filter @mawid/db build && \
pnpm --filter @mawid/shared build && \
pnpm --filter @mawid/api build
EXPOSE 3001
CMD ["node", "apps/api/dist/main.js"]