# --- Build stage --- FROM node:18-alpine AS build WORKDIR /app # Копируем package.json и package-lock.json (если есть) COPY package*.json ./ # Устанавливаем зависимости RUN npm install # Копируем исходный код COPY . . # Собираем проект (Vite по умолчанию генерирует папку dist) RUN npm run build # --- Production stage --- FROM nginx:alpine # Копируем собранный проект в nginx COPY --from=build /app/dist /usr/share/nginx/html # Открываем порт 80 для nginx EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]