# ── Stage 1: build the React app ───────────────────────── FROM node:20-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm install COPY . . RUN npm run build # ── Stage 2: serve ──────────────────────────────────────── FROM node:20-alpine WORKDIR /app COPY --from=builder /app/dist ./dist COPY --from=builder /app/server.cjs ./server.cjs COPY package-runtime.json ./package.json RUN npm install --production EXPOSE 3000 ENV NODE_ENV=production CMD ["node", "server.cjs"]