Требуется доработать существующий bash-скрипт для автоматизированной установки и настройки 'CMS-ки' на VPS с использованием Docker Скрипт частично работает, но имеет ряд проблем, которые необходимо решить.
Основные задачи:
1. **Настройка файрвола:**
- Добавить установку и настройку firewalld, если он не установлен
- Открытие только необходимых портов (80/443)
- По возможности настроить работу только через 443 порт
2. **Исправление ошибок:**
- Исправить ошибку с дублирующимся ключом `depends_on` в docker-compose.yml
- Добавить корректную проверку уже установленных компонентов
3. **Повышение отказоустойчивости:**
- Скрипт должен корректно работать при повторном запуске
- Если скрипт прервался, должна быть возможность продолжить установку с места остановки
- Добавить проверки перед каждым шагом установки
4. **Настройка работы с доменом:**
- Корректная работа как с основным доменом, так и с субдоменами
- Автоматическая настройка Let's Encrypt для указанного домена
Имеющиеся ресурсы:
- Существующий bash-скрипт и скрипт удаления
- Чистый VPS (доступ)
- Доменное имя для тестирования
Требования к выполнению:
1. Скрипт должен быть безопасным и не содержать потенциальных уязвимостей
2. Все вопросы пользователю должны иметь понятные пояснения и значения по умолчанию
3. В конце установки должна выводиться понятная информация о доступе к системе
4. Скрипт должен сохранять все пароли в безопасное место
5. Код должен быть чистым, с комментариями и понятной структурой