Merge pull request 'romanova_adelina_lab_1 is ready' (#23) from romanova_adelina_lab_1 into main
Reviewed-on: http://student.git.athene.tech/Alexey/DAS_2023_1/pulls/23
This commit is contained in:
commit
8c1f9a15fd
136
romanova_adelina_lab_1/README.md
Normal file
136
romanova_adelina_lab_1/README.md
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
# Лабораторная работа №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
|
||||||
|
|
64
romanova_adelina_lab_1/docker-compose.yml
Normal file
64
romanova_adelina_lab_1/docker-compose.yml
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
version: "3"
|
||||||
|
services:
|
||||||
|
mysql:
|
||||||
|
image: mysql
|
||||||
|
container_name: my-mysql-container
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
MYSQL_DATABASE: my_wiki
|
||||||
|
MYSQL_USER: wiki_user
|
||||||
|
MYSQL_PASSWORD: my_secret_password
|
||||||
|
MYSQL_RANDOM_ROOT_PASSWORD: "yes"
|
||||||
|
volumes:
|
||||||
|
- ./data:/var/lib/mysql
|
||||||
|
|
||||||
|
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
|
||||||
|
|
||||||
|
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
|
BIN
romanova_adelina_lab_1/docker.png
Normal file
BIN
romanova_adelina_lab_1/docker.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 116 KiB |
Loading…
Reference in New Issue
Block a user