distributed-computing/tasks/khalitova-am/lab_1/README.md
Khalitova Angelina d13a7e2c0b done
2023-09-20 09:42:49 +04:00

162 lines
6.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Отчёт по лабораторной работе №1
Выполнила: студентка гр. ИСЭбд-41 Халитова А.М.
## Разворачивание сервиса MediaWiki
Содержимое файла `docker-compose.yml` в папке MediaWiki:
```yaml
version: "3.2"
services: #описание контейнеров
#Контейнер Mysql используется как сервер для запуска
mysql:
image: mysql:5.7.23 #образ контейнера
container_name: mysql
hostname: mysql
volumes: #подключаем каталог с базой данных
- /var/lib/mysql:/var/lib/mysql
env_file: #файл с настройками БД для подключения к серверу
- ./mysql.env
restart: always
#Контейнер Mediawiki используется для запуска самого сервиса
mediawiki:
image: diouxx/mediawiki #образ контейнера
container_name : wiki
hostname: wiki
ports: #указываем по какому порту мы получаем доступ к сервису по адресу http://localhost:8081/
- "8081:80"
volumes: #прописываем каталоги для хранения данных контейнера
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /var/www/html/wiki/:/var/www/html/wiki
- ./data/LocalSettings.php:/var/www/html/LocalSettings.php
restart: always
```
Далее в командной строке разворачиваем сервис командой `docker-compose up`:
![](shots/shot1.png)
Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и MediaWiki созданы и запущены:
![](shots/shot2.png)
Переходим на http://localhost:8081:
![](shots/shot3.png)
Переходим к установке MediaWiki и прописываем указанные нами в файле `mysql.env` значения хоста, имя пользователя и пароль:
![](shots/shot4.png)
![](shots/shot5.png)
![](shots/shot6.png)
Далее заполняем данные страницы вики:
![](shots/shot7.png)
И завершаем установку путем скачивания и открытия файла настроек страницы:
![](shots/shot8.png)
## Разворачивание сервиса Wordpress
Также в файл `docker-compose.yml` в папке Wordpress прописываем следующий код:
```yaml
version: '3.1'
#Задаем контейнеры
services:
#Контейнер Wordpress
wordpress:
image: wordpress #образ
restart: always
ports: #на каком порте запускаем
- 8080:80
environment: #настройки БД вордпресса для подключения к серверу
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: exampleuser
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
volumes: #каталог хранения файлов сервиса
- wordpress:/var/www/html
db: #Контейнер MySQL
image: mysql:5.7 #образ и его версия
restart: always
environment: #настройки БД для подключения
MYSQL_DATABASE: exampledb
MYSQL_USER: exampleuser
MYSQL_PASSWORD: examplepass
MYSQL_RANDOM_ROOT_PASSWORD: '1'
volumes: #каталог хранения данных БД
- db:/var/lib/mysql
volumes:
wordpress:
db:
```
Через командную строку разворачиваем сервис:
![](shots/shot9.png)
В Docker Desktop проверяем, что оба контейнера запущены:
![](shots/shot10.png)
Теперь переходим на http://localhost:8080:
![](shots/shot11.png)
И устанавливаем Wordpress:
![](shots/shot12.png)
Далее осуществляем вход и попадаем на главную страницу, что говорит об успешной установке:
![](shots/shot13.png)
![](shots/shot14.png)
## Разворачивание сервиса Redmine
Содержимое файла `docker-compose.yml` в папке Redmine:
```yaml
version: '3.1'
#Задаем контейнеры
services:
#Контейнер Redmine
redmine:
image: redmine #образ
restart: always
ports: #на какой порт запускать
- 8082:3000
environment:
REDMINE_DB_MYSQL: db
REDMINE_DB_PASSWORD: example
REDMINE_SECRET_KEY_BASE: supersecretkey
#Контейнер базы данных MySQL
db:
image: mysql:5.7 #образ и версия
restart: always
environment: #название и пароль админа БД
MYSQL_ROOT_PASSWORD: example
MYSQL_DATABASE: redmine
```
Далее в командной строке разворачиваем сервис командой `docker-compose up`:
![](shots/shot15.png)
В Docker Desktop проверяем, что работают все три развернутых сервиса:
![](shots/shot16.png)
Переходим на http://localhost:8082:
![](shots/shot17.png)
Здесь мы можем выполнить вход как администратор или зарегистрироваться как пользователь. Попробуем зарегистрироваться:
![](shots/shot18.png)
Теперь попробуем войти в качестве пользователя:
![](shots/shot19.png)
И получаем ответ, что мы не можем этого сделать без подтверждения учетной записи админом.
Заходим в качестве администратора под логином и паролем admin/admin:
![](shots/shot20.png)
И попадаем в профиль администратора:
![](shots/shot21.png)
И так как мы являемся администратором, то в разделе администрирование/пользователи, мы можем подтвердить созданного нами ранее пользователя:
![](shots/shot22.png)