Техническое задание: Автоматизация развертывания веб-инфраструктуры
Цель проекта
Разработать комплект готовых скриптов для быстрого и стандартизированного развертывания и настройки веб-сервера на базе операционной системы CentOS.
Основные задачи
1. Установка и базовая настройка ПО
- Автоматическая установка и конфигурация веб-сервера Nginx.
- Установка и настройка PHP через PHP-FPM с типовыми параметрами для production-среды.
- Настройка взаимодействия между Nginx и PHP-FPM.
2. Безопасность и сертификаты
- Интеграция с Let's Encrypt для автоматического получения и обновления SSL/TLS-сертификатов.
- Базовая настройка безопасности сервера (firewall, параметры PHP и Nginx).
3. Работа с кодом и синхронизация
- Настройка автоматической синхронизации исходного кода проекта с репозитория GitHub.
- Организация процесса деплоя (например, через webhook).
4. Репликация конфигурации
- Создание механизма для синхронизации настроек, конфигурационных файлов и SSL-сертификатов с другими серверами в инфраструктуре.
- Обеспечение возможности масштабирования и создания идентичных окружений.
Требования к скриптам
- Скрипты должны быть написаны для CentOS.
- Код должен быть документирован, модулен и легко читаем.
- Необходимо предусмотреть обработку ошибок и логирование.
- Скрипты должны быть готовы к немедленному использованию после предоставления минимальных входных данных (например, доменное имя, путь к проекту, данные репозитория).
Ожидаемый результат
Комплект скриптов, который позволяет по минимальной команде развернуть полностью рабочее и безопасное веб-окружение с последующей синхронизацией кода и конфигураций.