Compare commits

..

3 Commits

Author SHA1 Message Date
fd833c8342 . 2024-12-15 02:06:32 +04:00
7fc0987659 . 2024-12-15 01:41:35 +04:00
37cfc2bb72 в процессе 2024-12-14 22:21:40 +04:00
4 changed files with 170 additions and 0 deletions

View File

@ -1,4 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Black">
<option name="sdkName" value="Python 3.12 (DAS_2024_1)" />
</component>
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.9 (tukaeva_alfiya_lab_4)" project-jdk-type="Python SDK" />
</project>

View File

@ -0,0 +1,123 @@
# Лабораторная работа №1 - Знакомство с docker и docker-compose
## Задание
Развернуть 3 сервиса в контейнерах docker через docker-compose.
Необходимые требования:
* Несколько контейнеров.
* Хотя бы один volume.
* Хотя бы один порт, проброшенный на хост.
* Разворачивание системы должно пройти до конца.
## Запуск работы:
Работа программы начинается после ввода в терминале команды:
```
docker-compose up -d
```
## Описание программы:
Сначала задаем основную структуру ```services:```. В этом разделе определяются сервисы, которые будут работать вместе.
Сервисы:
### mediawiki
```
mediawiki:
image: mediawiki:1.35
ports:
- "8080:80"
volumes:
- ./mediawiki-images:/var/www/html/images
```
Задаем образ сборки, указываем используемую версию:
```
image: mediawiki:1.35
```
Указываем порт:
```
ports:
- "8080:80"
```
Указываем том для хранения данных:
```
volumes:
- ./mediawiki-images:/var/www/html/images
```
### redmine
Для сервиса redmine код будет выглядеть аналогично сервису mediawiki:
```
redmine: # определение сервиса redmine
image: redmine:latest # образ redmine последней версии
ports: # проброс порта
- "8082:3000"
volumes: # настройки тома
- ./redmine/files:/usr/src/redmine/files
```
### wordpress
```
wordpress:
image: wordpress:latest
ports:
- "8081:80"
environment:
- WORDPRESS_DB_HOST=db_wp
- WORDPRESS_DB_USER=admin
- WORDPRESS_DB_PASSWORD=admin123
- WORDPRESS_DB_NAME=wpdb
volumes:
- ./wordpress:/var/www/html
depends_on:
- db_wp
```
Для сервиса wordpress добавятся переменные окружения
```
environment:
- WORDPRESS_DB_HOST=db_wp
- WORDPRESS_DB_USER=admin
- WORDPRESS_DB_PASSWORD=admin123
- WORDPRESS_DB_NAME=wpdb
volumes:
```
и зависимости
```
depends_on:
- db_wp
```
А также база данных
```
db_wp:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=rootpassword
- MYSQL_DATABASE=wpdb
- MYSQL_USER=admin
- MYSQL_PASSWORD=admin123
volumes:
- db_wp-data:/var/lib/mysql
```
# Скриншоты работы программы:
Запуск программы в терминале
![](img.png)
# Запись работы программы:
https://disk.yandex.ru/i/l4eSSZ-QAaQrrw

View File

@ -0,0 +1,44 @@
services:
mediawiki: # определение сервиса mediawiki
image: mediawiki:1.35 # образ MediaWiki версии 1.35
ports: # проброс порта
- "8080:80"
volumes: # настройки тома
- ./mediawiki-images:/var/www/html/images
wordpress: # определение сервиса wordpress
image: wordpress:latest # образ wordpress последней версии
ports: # проброс порта
- "8081:80"
environment: # переменные окружения
- WORDPRESS_DB_HOST=db_wp
- WORDPRESS_DB_USER=admin
- WORDPRESS_DB_PASSWORD=admin123
- WORDPRESS_DB_NAME=wpdb
volumes: # настройки тома
- ./wordpress:/var/www/html
depends_on: # зависимости
- db_wp
db_wp: # бд для wordpress
image: mysql:5.7 # используем mysql версии 5.7
environment: # переменные окружения
- MYSQL_ROOT_PASSWORD=rootpassword
- MYSQL_DATABASE=wpdb
- MYSQL_USER=admin
- MYSQL_PASSWORD=admin123
volumes: # настройки тома
- db_wp-data:/var/lib/mysql
redmine: # определение сервиса redmine
image: redmine:latest # образ redmine последней версии
ports: # проброс порта
- "8082:3000"
volumes: # настройки тома
- ./redmine/files:/usr/src/redmine/files
# определение томов, используемых для хранения данных
volumes:
mediawiki-data:
db_wp-data:
redmine-data:

BIN
melnikov_igor_lab_1/img.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB