Merge pull request 'rogashova_ekaterina_lab_1 is ready' (#66) from rogashova_ekaterina_lab_1 into main

Reviewed-on: #66
This commit is contained in:
Alexey 2024-10-19 12:08:44 +04:00
commit 309911ed75
2 changed files with 73 additions and 0 deletions

View File

@ -0,0 +1,35 @@
### Что за что отвечает в docker-compose.yml?
1. Сервис "wordpress":
- Запускается из образа wordpress:latest из Docker Hub.
- Проброс порта 80 из контейнера на порт 8080 хоста, чтобы можно было обращаться к WordPress из браузера.
- Монтирование volume wordpress_data в директорию /var/www/html контейнера для сохранения данных WordPress.
- Передача переменных окружения для подключения к базе данных MySQL.
- Зависимость от сервиса "mysql", то есть MySQL будет запущен до WordPress.
2. Сервис "mysql":
- Запускается из образа mysql:latest из Docker Hub.
- Передача переменных окружения для настройки базы данных: пароль root-пользователя, имя базы данных, имя пользователя и пароль.
3. Сервис "rabbitmq":
- Запускается из образа rabbitmq:3.12.8-management из Docker Hub, который включает в себя плагин управления RabbitMQ.
- Передача переменных окружения для настройки пользователя и пароля.
- Проброс порта 15672 из контейнера на порт 15672 хоста, чтобы можно было получить доступ к RabbitMQ Management Plugin.
- Монтирование volume rabbitmq-data в директорию /var/lib/rabbitmq контейнера для сохранения данных RabbitMQ.
4. Volumes:
- wordpress_data - для сохранения данных WordPress.
- rabbitmq-data - для сохранения данных RabbitMQ.
## Как запустить это?
Для запуска данной конфигурации Docker Compose выполните следующие шаги:
1. Открыть терминал и перейти в директорию, где находится docker-compose.yml.
2. Выполнить команду docker-compose up -d для запуска всех сервисов в фоновом режиме.
3. Дождаться, пока Docker Compose запустит все контейнеры. Это можно проверить, выполнив docker-compose ps.
## Видео
Работоспособность представлена на [видео](https://vk.com/video204968285_456240924).

View File

@ -0,0 +1,38 @@
version: '3.7'
services:
wordpress:
image: wordpress:latest
ports:
- "8080:80"
volumes:
- wordpress_data:/var/www/html
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: user
WORDPRESS_DB_PASSWORD: password
depends_on:
- mysql
mysql:
image: mysql:latest
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: user
MYSQL_PASSWORD: password
rabbitmq:
image: rabbitmq:3.12.8-management
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: admin
ports:
- 15672:15672
volumes:
- rabbitmq-data:/var/lib/rabbitmq
volumes:
wordpress_data:
rabbitmq-data: