DAS_2023_1/romanova_adelina_lab_1/README.md

137 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Лабораторная работа №1 - Знакомство с docker и docker-compose
## Задание
Разверните 3 сервиса на выбор в контейнерах docker с помощью docker-compose, учитывая следующие требования:
* Несколько контейнеров.
* Хотя бы один volume.
* Хотя бы один порт, проброшенный на хост.
* Разворачивание системы должно пройти до конца.
## Запуск
Введение в терминале команды:
```
docker-compose up -d
```
# Выбранные сервисы
 1. ```mysql``` - система для создания БД
 2. ```drupal``` - популярная система управления контентом
 3. ```gitea``` - сервис для хранения репозиториев git, на котором работает этот репозиторий
 4. ```wordpress``` - платформа для управления контентом
## Описание работы:
Были развёрнуты следующие сервисы:
### Drupal
```
drupal:
depends_on:
- mysql
image: drupal
container_name: my-drupal-container
ports:
- 8084:80
volumes:
- ./drupal-modules:/var/www/html/modules
- ./drupal-profiles:/var/www/html/profiles
- ./drupal-themes:/var/www/html/themes
environment:
- DRUPAL_DB_HOST=mysql
- DRUPAL_DB_USER=wiki_user
- DRUPAL_DB_PASSWORD=my_secret_password
- DRUPAL_DB_NAME=my_wiki
```
Этот код представляет собой часть файла конфигурации ```Docker Compose```, который используется для управления многоконтейнерными приложениями в Docker.
#### Объяснение работы кода:
Эта строка отвечает за образ сброки:
```
image: drupal
```
Задание имени контейнера:
```
container_name: my-drupal-container
```
Проброс портов:
```
ports:
- 8084:80
```
Тома для хранения данных:
```
volumes:
- ./drupal-modules:/var/www/html/modules
- ./drupal-profiles:/var/www/html/profiles
- ./drupal-themes:/var/www/html/themes
```
Переменные окружения для Drupal
```
environment:
- DRUPAL_DB_HOST=mysql
- DRUPAL_DB_USER=wiki_user
- DRUPAL_DB_PASSWORD=my_secret_password
- DRUPAL_DB_NAME=my_wiki
```
Аналогично со следующими сервисами:
### Gitea
```
depends_on:
- mysql
image: gitea/gitea
container_name: my-gitea-container
ports:
- 8085:3000
volumes:
- ./gitea:/data
environment:
- USER_UID=1000
- USER_GID=1000
- DB_TYPE=mysql
- DB_HOST=mysql:3306
- DB_NAME=my_wiki
- DB_USER=wiki_user
- DB_PASSWORD=my_secret_password
- ROOT_URL=http://localhost:8085
```
### Wordpress
```
depends_on:
- mysql
image: wordpress
container_name: my-wordpress-container
ports:
- 8086:80
volumes:
- ./wp-content:/var/www/html/wp-content
environment:
- WORDPRESS_DB_HOST=mysql
- WORDPRESS_DB_USER=wiki_user
- WORDPRESS_DB_PASSWORD=my_secret_password
- WORDPRESS_DB_NAME=my_wiki
```
# Скриншот работы
Запущенный контейнер в Docker
![](docker.png "")
# Youtube
https://youtu.be/slOXP6pHBsM