# Stage 1: Сборка приложения FROM node:18-alpine as builder WORKDIR /app # Копируем файлы package.json и package-lock.json COPY package*.json ./ # Устанавливаем зависимости RUN npm ci # Копируем исходный код COPY . . # Собираем приложение # RUN npm run build CMD ["npm", "run", "start" ] # Stage 2: Настройка production-окружения # FROM nginx:alpine # Копируем собранные файлы из предыдущего этапа # COPY --from=builder /app/dist /usr/share/nginx/html # # Копируем конфигурацию nginx # COPY nginx.conf /etc/nginx/conf.d/default.conf # Открываем порт 80 EXPOSE 80 # Запускаем nginx # CMD ["nginx", "-g", "daemon off;"]