В этом проекте реализуется развертывание необходимой инфраструктуры для веб-приложения на базе CMS Wordpress. Приложение состоит из следующих микросервисов:
- NGINX
- php-fpm + wordpress
- MariaDB
- Adminer
- FTP
- Redis
Каждый сервис запускается в отдельном контейнере.
Основа проекта - файл docker-compose.yml, в котором прописан сценарий для создания образов будущих сервисов из Dockerfile, порядок запуска контейнеров, мэппинг портов, политика перезапуска контейнеров, настрока сети. Настроен мэппинг томов. Используется два тома: один для базы данных, другой для файлов cайта. Все образы создаются на основе debian:buster. Готовые образы с dockerhub не используются.
Имена, пароли передаются через переменные окружения и записаны в отдельном файле .env. Для установки и конфигурации Wordpress используется утилита wp-cli. Автоматически скачивается ядро, создается wp-config, устанавливается ядро, скачиваются и устанавливаются тема и плагины, сайт заполняется тестовым контентом.