FROM node:22-alpine AS build WORKDIR /app COPY package.json package-lock.json ./ RUN npm ci COPY . . ARG APP_ENV=production RUN npx tsx scripts/next-env.ts "$APP_ENV" build && npx tsx scripts/package-standalone.ts "$APP_ENV" && mv "dist/$APP_ENV" /release FROM node:22-alpine AS runtime WORKDIR /app ENV NODE_ENV=production PORT=3000 HOSTNAME=0.0.0.0 COPY --from=build --chown=node:node /release ./ USER node EXPOSE 3000 CMD ["node", "start.mjs"]