# Build stage FROM node:20-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run build # Production stage FROM node:20-alpine WORKDIR /app RUN apk add --no-cache tini COPY --from=builder /app/out ./out COPY --from=builder /app/public ./public COPY --from=builder /app/server.js ./server.js ENV NODE_ENV=production ENV PORT=3000 EXPOSE 3000 USER node ENTRYPOINT ["/sbin/tini", "--"] CMD ["node", "server.js"]