haliullov_kamil_lab_1 #232
139
haliullov_kamil_lab_1/README.md
Normal file
139
haliullov_kamil_lab_1/README.md
Normal 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
|
54
haliullov_kamil_lab_1/docker-compose.yml
Normal file
54
haliullov_kamil_lab_1/docker-compose.yml
Normal 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:
|
BIN
haliullov_kamil_lab_1/lab_1.png
Normal file
BIN
haliullov_kamil_lab_1/lab_1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 34 KiB |
Loading…
Reference in New Issue
Block a user