FROM node:24-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run build FROM node:24-alpine AS runner WORKDIR /app ENV NODE_ENV=production COPY --from=builder /app ./ COPY docker-entrypoint.sh /app/docker-entrypoint.sh RUN chmod +x /app/docker-entrypoint.sh EXPOSE 3000 ENTRYPOINT ["/app/docker-entrypoint.sh"]