| 123456789101112131415161718192021222324 |
- FROM node:20-alpine AS base
- FROM base AS deps
- WORKDIR /app
- COPY package.json packages/*/package.json apps/*/package.json ./
- RUN npm install --workspaces --include-workspace-root
- FROM base AS builder
- WORKDIR /app
- COPY --from=deps /app/node_modules ./node_modules
- COPY . .
- RUN npm run build --workspace=apps/api-server
- FROM base AS runner
- WORKDIR /app
- ENV NODE_ENV=production
- COPY --from=builder /app/apps/api-server/dist ./dist
- COPY --from=builder /app/node_modules ./node_modules
- COPY --from=builder /app/packages/shared-types/dist ./packages/shared-types/dist
- COPY --from=builder /app/apps/api-server/package.json ./
- EXPOSE 3001
- CMD ["node", "dist/main.js"]
|