FROM node:24-slim AS deps WORKDIR /app COPY package.json package-lock.json ./ RUN npm ci FROM node:24-slim AS build WORKDIR /app COPY --from=deps /app/node_modules ./node_modules COPY . . ENV NEXT_TELEMETRY_DISABLED=1 RUN npm run build FROM node:24-slim AS run WORKDIR /app ENV NODE_ENV=production NEXT_TELEMETRY_DISABLED=1 DATA_DIR=/data PORT=3000 RUN apt-get update && apt-get install -y --no-install-recommends curl && rm -rf /var/lib/apt/lists/* \ && mkdir -p /data && chown node:node /data COPY --from=build --chown=node:node /app/.next ./.next COPY --from=build --chown=node:node /app/public ./public COPY --from=build --chown=node:node /app/node_modules ./node_modules COPY --from=build --chown=node:node /app/package.json ./package.json COPY --from=build --chown=node:node /app/next.config.* ./ USER node VOLUME /data EXPOSE 3000 HEALTHCHECK --interval=30s --timeout=3s CMD curl -fsS localhost:3000/api/healthz CMD ["npm", "start"]