FROM node:20 AS base ENV TZ=Asia/Tehran ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && \ apt-get install -y --no-install-recommends \ tzdata \ python3 \ make \ g++ \ && rm -rf /var/lib/apt/lists/* FROM base AS deps WORKDIR /temp-deps COPY package*.json ./ RUN npm install FROM base AS builder WORKDIR /build COPY . ./ COPY --from=deps /temp-deps/node_modules ./node_modules RUN npm run build # Remove dev dependencies RUN npm prune --omit=dev FROM base AS runner WORKDIR /app ENV NUXT_TELEMETRY_DISABLED=1 ENV NODE_ENV=production ENV PORT=3000 ENV HOSTNAME=0.0.0.0 # Debian-compatible user creation RUN groupadd -r appgroup && \ useradd -r -g appgroup appuser COPY --from=builder --chown=appuser:appgroup /build ./ USER appuser EXPOSE 3000 CMD ["npm", "start"]