# Build stage FROM node:20-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run prisma:generate RUN npm run server:build # Production stage FROM node:20-alpine WORKDIR /app ENV NODE_ENV=production COPY package*.json ./ RUN npm ci --omit=dev COPY --from=builder /app/server/dist ./server/dist COPY --from=builder /app/server/prisma ./server/prisma COPY --from=builder /app/prisma.config.ts ./prisma.config.ts COPY --from=builder /app/node_modules/.prisma ./node_modules/.prisma EXPOSE 3000 CMD ["node", "server/dist/main.js"]