2023-09-25 21:12:27 +04:00
|
|
|
|
# Отчет по лабораторной работе №1
|
|
|
|
|
|
|
|
|
|
Выполнил студент гр. ИСЭбд-41 Мытарин Е.С.
|
|
|
|
|
|
|
|
|
|
## Разворачивание сервиса Mediawiki
|
|
|
|
|
|
2023-09-25 21:15:22 +04:00
|
|
|
|
Содержимое файла `docker-compose.yml` в папке mediawiki
|
2023-09-25 21:12:27 +04:00
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
version: '3'
|
|
|
|
|
services:
|
|
|
|
|
mediawiki:
|
|
|
|
|
image: mediawiki:1.38 #образ docker
|
|
|
|
|
restart: always #контейнер всегда перезапускается
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- docker_network
|
|
|
|
|
ports:
|
|
|
|
|
- 8080:80 #пробрасываем порт
|
|
|
|
|
volumes:
|
|
|
|
|
- ./LocalSettings.php:/var/www/html/LocalSettings.php #определение тома для хранения настроек php
|
|
|
|
|
|
|
|
|
|
database:
|
|
|
|
|
image: mysql:8.0.29 #образ docker
|
|
|
|
|
restart: always #контейнер всегда перезапускается
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- docker_network
|
|
|
|
|
environment:
|
|
|
|
|
MYSQL_DATABASE: wiki_db #имя бд
|
|
|
|
|
MYSQL_ROOT_PASSWORD: root #пароль для root пользователя
|
|
|
|
|
MYSQL_USER: tornado #имя пользователя mysql
|
|
|
|
|
MYSQL_PASSWORD: tornado #пароль пользователя mysql
|
|
|
|
|
volumes:
|
|
|
|
|
- /var/lib/mysql #определение тома для хранения данных mysql
|
|
|
|
|
|
|
|
|
|
phpmyadmin:
|
|
|
|
|
depends_on: #определяем зависимость от бд
|
|
|
|
|
- database
|
|
|
|
|
image: phpmyadmin/phpmyadmin #образ docker
|
|
|
|
|
restart: always #контейнер всегда перезапускается
|
|
|
|
|
ports:
|
|
|
|
|
- '8000:80' #пробрасываем порт
|
|
|
|
|
environment:
|
|
|
|
|
PMA_HOST: database #кто является хостом
|
|
|
|
|
MYSQL_ROOT_PASSWORD: root #пароль от пользователя root
|
|
|
|
|
UPLOAD_LIMIT: 64M #лимит на загрузку
|
|
|
|
|
networks:
|
|
|
|
|
- docker_network #используем сеть для связи
|
|
|
|
|
|
|
|
|
|
networks:
|
|
|
|
|
docker_network:
|
|
|
|
|
driver: bridge #подключаем драйвер для соединения
|
|
|
|
|
```
|
2023-09-25 21:15:22 +04:00
|
|
|
|
С помощью команды `docker-compose.yml` в терминале разворачиваем сервис:
|
2023-09-25 21:12:27 +04:00
|
|
|
|
![](images/pic1_1.png)
|
|
|
|
|
|
|
|
|
|
Открываем Docker Desktop и проверяем, что контейнер сервера базы данных, Mediawiki и PHPMyAdmin созданы и запущены:
|
|
|
|
|
![](images/pic1_2.png)
|
|
|
|
|
|
|
|
|
|
Переходим на http://localhost:8080:
|
|
|
|
|
![](images/pic1_3.png)
|
|
|
|
|
|
|
|
|
|
Задаем настройки и регистрируемся. Сервис поднят и успешно работает
|
|
|
|
|
![](images/pic1_4.png)
|
|
|
|
|
|
|
|
|
|
## Разворачивание сервиса Gitea
|
|
|
|
|
|
2023-09-25 21:15:22 +04:00
|
|
|
|
Содержимое файла `docker-compose.yml` в папке gitea
|
2023-09-25 21:12:27 +04:00
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
version: '3'
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
server:
|
|
|
|
|
image: gitea/gitea:1.20.4 #образ docker
|
|
|
|
|
container_name: gitea #имя контейнера
|
|
|
|
|
environment: #настройки для подключения
|
|
|
|
|
- USER_UID=1000
|
|
|
|
|
- USER_GID=1000
|
|
|
|
|
- GITEA__database__DB_TYPE=mysql
|
|
|
|
|
- GITEA__database__HOST=db:3306
|
|
|
|
|
- GITEA__database__NAME=gitea
|
|
|
|
|
- GITEA__database__USER=gitea
|
|
|
|
|
- GITEA__database__PASSWD=gitea
|
|
|
|
|
restart: always #контейнер всегда перезапускается
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- gitea
|
|
|
|
|
volumes: #устанавливаем томы для хранения данных
|
|
|
|
|
- ./gitea:/data
|
|
|
|
|
- /etc/timezone:/etc/timezone:ro
|
|
|
|
|
- /etc/localtime:/etc/localtime:ro
|
|
|
|
|
ports:
|
|
|
|
|
- "3000:3000" #проброс портов
|
|
|
|
|
- "2222:22"
|
|
|
|
|
depends_on: #зависимости
|
|
|
|
|
- db
|
|
|
|
|
|
|
|
|
|
db:
|
|
|
|
|
image: mysql:8 #образ docker
|
|
|
|
|
restart: always #контейнер всегда перезапускается
|
|
|
|
|
environment:
|
|
|
|
|
- MYSQL_ROOT_PASSWORD=gitea #пароль root
|
|
|
|
|
- MYSQL_USER=gitea #пользователь
|
|
|
|
|
- MYSQL_PASSWORD=gitea #пароль
|
|
|
|
|
- MYSQL_DATABASE=gitea #имя бд
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- gitea
|
|
|
|
|
volumes: #определяем том для хранения данных mysql
|
|
|
|
|
- ./mysql:/var/lib/mysql
|
|
|
|
|
|
|
|
|
|
networks: #задаем сеть и указываем что она внутренняя
|
|
|
|
|
gitea:
|
|
|
|
|
external: false
|
|
|
|
|
```
|
|
|
|
|
Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и Gitea созданы и запущены:
|
|
|
|
|
![](images/pic2_1.png)
|
|
|
|
|
|
|
|
|
|
Переходим на http://localhost:3000:
|
|
|
|
|
![](images/pic2_2.png)
|
|
|
|
|
|
|
|
|
|
Задаем настройки и регистрируемся. Сервис поднят и успешно работает
|
|
|
|
|
![](images/pic2_3.png)
|
|
|
|
|
|
|
|
|
|
## Разворачивание сервиса Wordpress
|
|
|
|
|
|
|
|
|
|
Содержимое файла '' в папке wordpress
|
|
|
|
|
|
|
|
|
|
```yaml
|
|
|
|
|
version: '3'
|
|
|
|
|
services:
|
|
|
|
|
wordpress:
|
|
|
|
|
image: wordpress #образ docker
|
|
|
|
|
container_name: wordpress #имя контейнера
|
|
|
|
|
ports:
|
|
|
|
|
- '9091:80' #проброс портов
|
|
|
|
|
environment: #настройки для подключения
|
|
|
|
|
WORDPRESS_DB_HOST: mysql
|
|
|
|
|
WORDPRESS_DB_USER: tornado
|
|
|
|
|
WORDPRESS_DB_PASSWORD: tornado
|
|
|
|
|
WORDPRESS_DB_NAME: wp_database
|
|
|
|
|
volumes: #определяем том для хранения данных
|
|
|
|
|
- wordpress_data:/var/www/html
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- wordpress-network
|
|
|
|
|
|
|
|
|
|
mysql:
|
|
|
|
|
image: mysql:5.7 #образ docker
|
|
|
|
|
container_name: mysql #имя контейнера
|
|
|
|
|
environment: #настройки для подключения
|
|
|
|
|
MYSQL_ROOT_PASSWORD: root
|
|
|
|
|
MYSQL_DATABASE: wp_database
|
|
|
|
|
MYSQL_USER: tornado
|
|
|
|
|
MYSQL_PASSWORD: tornado
|
|
|
|
|
volumes: #определяем том для хранения данных
|
|
|
|
|
- mysql_data:/var/lib/mysql
|
|
|
|
|
networks: #используем сеть для связи
|
|
|
|
|
- wordpress-network
|
|
|
|
|
networks: #сеть
|
|
|
|
|
wordpress-network:
|
|
|
|
|
volumes: #тома для хранениях данных
|
|
|
|
|
wordpress_data:
|
|
|
|
|
mysql_data:
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и Wordpress созданы и запущены:
|
|
|
|
|
![](images/pic3_1.png)
|
|
|
|
|
|
|
|
|
|
Переходим на http://localhost:9091:
|
|
|
|
|
![](images/pic3_2.png)
|
|
|
|
|
|
|
|
|
|
Задаем настройки и регистрируемся. Сервис поднят и успешно работает
|
|
|
|
|
![](images/pic3_3.png)
|