Files
Mini-ERP-app/frontend/Dockerfile
2025-08-27 12:47:23 +04:00

46 lines
1.3 KiB
Docker
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Многоэтапная сборка для Angular приложения
FROM node:18-alpine AS builder
# Установка рабочей директории
WORKDIR /app
# Копирование package файлов
COPY package*.json ./
# Установка зависимостей
RUN npm ci --only=production
# Копирование исходного кода
COPY . .
# Сборка приложения
RUN npm run build:prod
# Финальный образ с nginx
FROM nginx:alpine
# Копирование собранного приложения
COPY --from=builder /app/dist/erp-mvp-frontend /usr/share/nginx/html
# Копирование конфигурации nginx
COPY nginx.conf /etc/nginx/nginx.conf
# Создание пользователя для безопасности
RUN addgroup -g 1001 -S appgroup && \
adduser -u 1001 -S appuser -G appgroup
# Смена владельца файлов
RUN chown -R appuser:appgroup /usr/share/nginx/html && \
chown -R appuser:appgroup /var/cache/nginx && \
chown -R appuser:appgroup /var/log/nginx && \
chown -R appuser:appgroup /etc/nginx/conf.d
# Переключение на непривилегированного пользователя
USER appuser
# Экспорт порта
EXPOSE 80
# Команда запуска
CMD ["nginx", "-g", "daemon off;"]