From f3bbfb2efd1aeaa9bdf9e25e187bad86bde5ab74 Mon Sep 17 00:00:00 2001 From: EkaterinaR Date: Mon, 14 Oct 2024 23:20:57 +0400 Subject: [PATCH] rogashova_ekaterina_lab_1 is ready --- rogashova_ekaterina_lab_1/README.md | 35 +++++++++++++++++ rogashova_ekaterina_lab_1/docker-compose.yaml | 38 +++++++++++++++++++ 2 files changed, 73 insertions(+) create mode 100644 rogashova_ekaterina_lab_1/README.md create mode 100644 rogashova_ekaterina_lab_1/docker-compose.yaml diff --git a/rogashova_ekaterina_lab_1/README.md b/rogashova_ekaterina_lab_1/README.md new file mode 100644 index 0000000..479d1ec --- /dev/null +++ b/rogashova_ekaterina_lab_1/README.md @@ -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). + + diff --git a/rogashova_ekaterina_lab_1/docker-compose.yaml b/rogashova_ekaterina_lab_1/docker-compose.yaml new file mode 100644 index 0000000..b7bb3cb --- /dev/null +++ b/rogashova_ekaterina_lab_1/docker-compose.yaml @@ -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: