# ========== СТАДИЯ 1: СБОРКА ========== FROM node:20-alpine AS builder WORKDIR /app ENV PUPPETEER_SKIP_DOWNLOAD=true ARG SITE_URL ARG PRERENDER_API_URL ENV SITE_URL=${SITE_URL} ENV PRERENDER_API_URL=${PRERENDER_API_URL} # Копируем зависимости COPY package*.json ./ RUN npm ci # Копируем исходники COPY . . # Сборка проекта RUN npx vite build RUN node scripts/prerender.js # ========== СТАДИЯ 2: СЕРВЕР ========== FROM nginx:alpine ENV BACKEND_UPSTREAM=pvh-backend:8000 # Копируем собранные файлы из стадии 1 COPY --from=builder /app/dist /usr/share/nginx/html COPY nginx/default.conf.template /etc/nginx/templates/default.conf.template # Конфиг для SPA (чтобы react-router работал) EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]