FROM node:lts-alpine AS deps WORKDIR /app COPY package.json pnpm-lock.yaml ./ RUN npm install -g pnpm RUN pnpm install --frozen-lockfile FROM node:lts-alpine AS builder WORKDIR /app COPY . . COPY --from=deps /app/node_modules ./node_modules ENV NODE_ENV=production RUN npm install -g pnpm RUN pnpm build FROM node:lts-alpine AS runner WORKDIR /app COPY --from=builder /app/next.config.mjs ./ COPY --from=builder /app/public ./public COPY --from=builder /app/.next ./.next COPY --from=builder /app/node_modules ./node_modules ENV NEXT_TELEMETRY_DISABLED=1 ENV NODE_ENV=production ENV HOST=0.0.0.0 ENV PORT=3000 CMD ["./node_modules/next/dist/bin/next", "start"]