# Отчет по лабораторной работе №1

Выполнила: студентка гр. ИСЭбд-41 Островская С.Ф.

## Разворачивание сервиса GITEA

Содержимое файла `docker-compose.yml` в папке Gitea:

```yaml
version: "3"
#задаем контейнеры 
networks:
  gitea:
    external: false
#контейнер gitea (для запуска сервиса)
services:
  server:
    image: gitea/gitea:1.20.4 #образ gitea и версия
    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"
      - "222:22"
    depends_on:
      - db
#контейнер mysql (БД)
  db:
    image: mysql:8 #образ mysql и версия
    restart: always #параметр перезапуска
    environment: #подлкючение каталога с бд
      - MYSQL_ROOT_PASSWORD=gitea
      - MYSQL_USER=gitea
      - MYSQL_PASSWORD=gitea
      - MYSQL_DATABASE=gitea
    networks: #параметр сети
      - gitea
    volumes: #раздел для хранения данных БД
      - ./mysql:/var/lib/mysql
```
Открываем консоль и разворачиваем сервис командой `docker-compose up -d`:
![](pic/pic1.jpg)

Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и Gitea: созданы и запущены:
![](pic/pic2.jpg)

Переходим на http://localhost:3000:
![](pic/pic3.jpg)

Регистрируемся на Gitea:
![](pic/pic4.jpg)

## Разворачивание сервиса WORDPRESS

Содержимое файла `docker-compose.yml` в папке Wordpress:

```yaml
version: '3.1'
#задаем контейнеры 
services:
#контейнер wordpress (для запуска сервиса) 
  wordpress:
    image: wordpress #образ wordpress
    restart: always #параметр перезапуска
    ports: #порт
      - 7777:80
    environment: #настройки бд для подключения к серверу
      WORDPRESS_DB_HOST: database
      WORDPRESS_DB_USER: user
      WORDPRESS_DB_PASSWORD: password
      WORDPRESS_DB_NAME: name_database
    volumes: #разделы для хранения данных контейнера
      - wordpress:/var/www/html
#контейнер mysql (БД)
  database: 
    image: mysql:5.7 #образ mysql и версия
    restart: always #параметр перезапуска
    environment: #подлкючение каталога с бд
      MYSQL_DATABASE: name_database
      MYSQL_USER: user
      MYSQL_PASSWORD: password
      MYSQL_RANDOM_ROOT_PASSWORD: '12345'
    volumes: #раздел для хранения данных БД
      - database:/var/lib/mysql
volumes:
  wordpress:
  database:
```
Открываем консоль и разворачиваем сервис командой `docker-compose up -d`:
![](pic/pic5.jpg)

Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и Wordpress: созданы и запущены:
![](pic/pic16.jpg)

Переходим на http://localhost:7777:
![](pic/pic6.jpg)

Регистрируемся на Wordpress:
![](pic/pic7.jpg)
![](pic/pic8.jpg)
![](pic/pic9.jpg)

## Разворачивание сервиса REDMINE

Содержимое файла `docker-compose.yml` в папке Redmine:

```yaml
version: '3.1'
#задаем контейнеры 
services:
#контейнер redmine (для запуска сервиса) 
  redmine:
    image: redmine #образ redmine
    restart: always #параметр перезапуска
    ports: #порт
      - 8080:3000
    environment: #настройки подключения к бд
      REDMINE_DB_MYSQL: db
      REDMINE_DB_PASSWORD: example
      REDMINE_SECRET_KEY_BASE: supersecretkey

  db:
    image: mysql:5.7 #образ mysql и версия
    restart: always #параметр перезапуска
    environment: #настойки бд
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: redmine
```
Открываем консоль и разворачиваем сервис командой `docker-compose up -d`:
![](pic/pic10.jpg)

Открываем Docker Desktop и проверяем, что контейнер сервера базы данных и Redmine: созданы и запущены:
![](pic/pic16.jpg)

Переходим на http://localhost:8080:
![](pic/pic11.jpg)

Регистрируемся:
![](pic/pic12.jpg)

Пытаемся авторизоваться и видим сообщение о том, что необходимо подтверждение админа, чтобы войти:
![](pic/pic13.jpg)

Заходим в качестве администратора и разрешаем доступ для пользователя:
![](pic/pic14.jpg)

Теперь заходим под созданным пользователем:
![](pic/pic15.jpg)