haliullov_kamil_lab_1 #232

Merged
Alexey merged 1 commits from haliullov_kamil_lab_1 into main 2024-12-15 13:37:41 +04:00
3 changed files with 193 additions and 0 deletions

View File

@ -0,0 +1,139 @@
# Лабораторная работа №1 - Знакомство с docker и docker-compose
## Задание
Нужно развернуть 3 сервиса в контейнерах docker через docker-compose.
Необходимые требования:
* Несколько контейнеров.
* Хотя бы один volume.
* Хотя бы один порт, проброшенный на хост.
* Разворачивание системы должно пройти до конца.
## Запуск ЛР:
Введем в терминале команду:
```
docker-compose up -d
```
## Использованные сервисы:
 1. ```db``` - база данные MySQL
 2. ```redmine``` - Система учёта багов, т.е. баг-трекер.
 3. ```gitea``` - Сервис для хранения репозиториев git, на котором работает этот репозиторий.
 4. ```wordpress``` - платформа для управления контентом
## Описание программы:
Развернутые сервисы:
### wordpress
```
wordpress: # Определение сервиса WordPress
image: wordpress:latest # Используемый образ WordPress последней версии
containername: wp_app # Имя контейнера
restart: always
ports: # Настройка портов
- "8000:80"
environment: # Переменные окружения
WORDPRESSDBHOST: ${DBHOST}
WORDPRESSDBUSER: ${DBUSER}
WORDPRESSDBPASSWORD: ${DBPASSWORD}
WORDPRESSDBNAME: ${DBNAME}
WORDPRESSADMINUSER: admin
WORDPRESSADMINPASSWORD: adminpassword
WORDPRESSADMINEMAIL: admin@example.com
volumes: # Настройка томов
- wordpress_data:/var/www/html
dependson: # Зависимости
- db_wordpress # Зависит от сервиса MySQL
```
Эта строка отвечает за образ сброки:
```
image: wordpress:latest
```
Задание имени контейнера:
```
containername: wp_app
```
Проброс портов:
```
ports:
- 8000:80
```
Тома для хранения данных:
```
volumes:
- wordpress_data:/var/www/html
```
Переменные окружения
```
environment:
WORDPRESSDBHOST: ${DBHOST}
WORDPRESSDBUSER: ${DBUSER}
WORDPRESSDBPASSWORD: ${DBPASSWORD}
WORDPRESSDBNAME: ${DBNAME}
WORDPRESSADMINUSER: admin
WORDPRESSADMINPASSWORD: adminpassword
WORDPRESSADMINEMAIL: admin@example.com
```
Зависимости
```
dependson:
- db_wordpress
```
Аналогично со другими сервисами:
### mediawiki
```
mediawiki: # Определение сервиса MediaWiki
image: mediawiki:1.35 # Используемый образ MediaWiki версии 1.35
ports: # Настройка портов
- "8080:80"
containername: mediawiki # Имя контейнера
volumes: # Настройка томов
- mediawiki_data:/var/www/html/images mediawiki: # Определение сервиса MediaWiki
image: mediawiki:1.35 # Используемый образ MediaWiki версии 1.35
ports: # Настройка портов
- "8080:80"
containername: mediawiki # Имя контейнера
volumes: # Настройка томов
- mediawiki_data:/var/www/html/images
```
### redmine
```
gitea:
image: gitea/gitea:latest
container_name: gitea
ports:
- "8082:3000"
environment:
- USER_UID=1000
- USER_GID=1000
volumes:
- gitea_data:/data
```
# Скрины работы программы:
Панель консоли
![](lab_1.png "")
# Видео
https://disk.yandex.ru/i/H4_tFURvpQuqQA

View File

@ -0,0 +1,54 @@
services:
wordpress:
image: wordpress:latest
container_name: wordpress
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: example_user
WORDPRESS_DB_PASSWORD: example_password
WORDPRESS_DB_NAME: example_db
volumes:
- wordpress_data:/var/www/html
depends_on:
- db
db:
image: mysql:5.7
container_name: wordpress_db
environment:
MYSQL_DATABASE: example_db
MYSQL_USER: example_user
MYSQL_PASSWORD: example_password
MYSQL_ROOT_PASSWORD: root_password
volumes:
- db_data:/var/lib/mysql
redmine:
image: redmine:latest
container_name: redmine
ports:
- "3000:3000"
volumes:
- redmine_data:/usr/src/redmine/files
gitea:
image: gitea/gitea:latest
container_name: gitea
ports:
- "8082:3000"
environment:
- USER_UID=1000
- USER_GID=1000
volumes:
- gitea_data:/data
volumes:
wordpress_data:
db_data:
redmine_data:
gitea_data:

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB