# Лабораторная работа №1
## ПИбд-42 Машкова Маргарита
## Задание
1. Установить средство контейнеризации docker.
2. Изучить применение и принципы docker.
3. Изучить утилиту docker-compose и структуру файла docker-compose.yml.
4. Развернуть не менее 3х различных сервисов при помощи docker-compose.

> Docker Compose использует файл docker-compose.yml для создания и запуска всех сервисов, определенных в конфигурации,
> с помощью одной команды.

## Запуск программы
В директории с файлом `docker-compose.yml` выполнить команду:
```
docker-compose up -d
```

## Разворачиваемые сервисы

> - `mediawiki` - это платформа, которая позволяет пользователям создавать и редактировать страницы, а также управлять
изображениями и мультимедийными файлами.
> - `wordpress` - популярная система управления контентом.
> - `drupal` - популярная система управления контентом.
> - `mysql` - СУБД для создания БД, которую будет использовать сервис wordpress.
## Описание работы программы

### Конфигурация сервиса `mediawiki`:
```
mediawiki:
image: mediawiki
container_name: mediawiki
ports:
  - "8081:80"
volumes:
  - mediawiki-data:/var/www/html/images
environment:
  - MEDIAWIKI_DB_HOST=db
  - MEDIAWIKI_DB_USER=wikiuser
  - MEDIAWIKI_DB_PASSWORD=wikipassword
  - MEDIAWIKI_DB_NAME=wikidb
```
### Конфигурация сервиса `mysql`:
```
mysql:
image: mysql:latest
container_name: mysql
volumes:
  - mysql-data:/var/lib/mysql
environment:
  - MYSQL_DATABASE=wiki_db
  - MYSQL_USER=wiki_user
  - MYSQL_PASSWORD=password
  - MYSQL_ROOT_PASSWORD=password
```
### Конфигурация сервиса `wordpress`:
```
wordpress:
depends_on:
  - mysql
image: wordpress
container_name: wordpress
volumes:
  - wordpress-data:/var/www/html
ports:
  - "8082:80"
environment:
  - WORDPRESS_DB_HOST=mysql
  - WORDPRESS_DB_NAME=wiki_db
  - WORDPRESS_DB_USER=wiki_user
  - WORDPRESS_DB_PASSWORD=password
```
### Конфигурация сервиса `drupal`:
```
drupal:
image: drupal:latest
container_name: drupal
ports:
  - "8083:80"
volumes:
  - drupal_modules:/var/www/html/modules
  - drupal_profiles:/var/www/html/profiles
  - drupal_themes:/var/www/html/themes
  - drupal_sites:/var/www/html/sites
```

## Запуск сервисов

Результат выполнения команды `docker-compose up -d`
![Вывод в консоли](build_images.png)

Созданные контейнеры:
![Созданные контейнеры](containers.png)

mediawiki:
![mediawiki](mediawiki.png)

wordpress:
![wordpress](wordpress.png)

drupal:
![drupal](drupal.png)

Ссылка на видео:
https://youtu.be/150uOdQU-7Y