FROM node:22-alpine AS builder WORKDIR /app COPY . . RUN npm install --global pnpm RUN pnpm install --frozen-lockfile RUN pnpm build FROM node:22-alpine RUN npm install --global pnpm WORKDIR /app COPY --from=builder /app/package.json /app/ COPY --from=builder /app/pnpm-lock.yaml /app/ COPY --from=builder /app/tsconfig.json /app/ COPY --from=builder /app/backend /app/backend COPY --from=builder /app/shared /app/shared COPY --from=builder /app/dist /app/dist RUN pnpm install --frozen-lockfile --prod EXPOSE 3000 ENV NODE_ENV=production ENTRYPOINT ["pnpm", "start"]