# Magos

Программа для автоматизированного управления конфигурациями WAF.

## Описание

Программа выполняет следующие задачи:

1. Подключается к PostgreSQL БД (primary/secondary)
2. Определяет instance текущего хоста по hostname
3. Получает биндинги для данного instance из таблицы `apps_settings`
4. Группирует биндинги по `client_title`
5. Для каждого клиента:
   - Получает данные из БД или через API ServicePipe (server_name, aliases, origins)
   - Выделяет свободные порты для контейнеров
   - Генерирует конфигурационные файлы Angie
   - Создает директории для контейнеров
   - Генерирует конфигурационные файлы Nginx для контейнеров
   - Генерирует docker-compose.yml файлы
   - Запускает контейнеры через docker-compose

## Подробности

Изучить как работает программа можно в файле ARCHITECTURE.md.

Посмотреть зависимость работы программы от БД в файле DATABASE_SCHEMA.md
