polevoy_sergey_lab_1 #13
42
polevoy_sergey_lab_1/docker-compose.yml
Normal file
42
polevoy_sergey_lab_1/docker-compose.yml
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
services: # Начало объявления сервисов
|
||||||
|
gitea: # Указывается название сервиса
|
||||||
|
image: gitea/gitea:1.22.2 # Указание названия образа (и/или его версии), который будет взят для создания контейнера
|
||||||
|
restart: always # Указывается политика перезапуска, в данном случае всегда перезапускать контейнер, если он остановился
|
||||||
|
environment: # Указываются переменные среды
|
||||||
|
- GITEA__database__DB_TYPE=postgres # Тип базы данных
|
||||||
|
- GITEA__database__HOST=postgres:5432 # Хост бд. Название сервиса это а-ля доменное имя и внутри сети разрешается в ip нужного контейнера
|
||||||
|
- GITEA__database__NAME=gitea # Название базы данных
|
||||||
|
- GITEA__database__USER=superuser # Пользователь базы данных
|
||||||
|
- GITEA__database__PASSWD=superpassword # Пароль пользователя базы данных
|
||||||
|
ports: # Перечисляются пробросы портов на хостовую машину. Слева порт хостовой машины, справа порт контейнера
|
||||||
|
- "3000:3000" # Web интерфейс
|
||||||
|
- "222:22" # SSH
|
||||||
|
volumes: # Указываются монтированные тома, папки, файлы. В данном случае в папку /data монтируется объявленный ниже том gitea
|
||||||
|
- gitea:/data
|
||||||
|
depends_on: # Указывается зависимость запуска контейнера от другого сервиса, в данном случае запускается только после запуска сервиса бд
|
||||||
|
- postgres
|
||||||
|
# Дальше всё по аналогии, различаются лишь названия, переменные окружения, образы, порты и тома
|
||||||
|
postgres:
|
||||||
|
image: postgres:14
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
- POSTGRES_USER=superuser
|
||||||
|
- POSTGRES_PASSWORD=superpassword
|
||||||
|
- POSTGRES_DB=gitea
|
||||||
|
ports:
|
||||||
|
- "5432:5432"
|
||||||
|
volumes:
|
||||||
|
- postgres:/var/lib/postgresql/data
|
||||||
|
|
||||||
|
rabbitmq:
|
||||||
|
image: rabbitmq:3-management
|
||||||
|
environment:
|
||||||
|
RABBITMQ_DEFAULT_USER: superuser
|
||||||
|
RABBITMQ_DEFAULT_PASS: superpassword
|
||||||
|
ports:
|
||||||
|
- "5672:5672"
|
||||||
|
- "15672:15672"
|
||||||
|
|
||||||
|
volumes: # Перечисление томов, которые можно использовать как в одном, так и в нескольких сервисах
|
||||||
|
postgres:
|
||||||
|
gitea:
|
25
polevoy_sergey_lab_1/readme.md
Normal file
25
polevoy_sergey_lab_1/readme.md
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# Лабораторная работа №1
|
||||||
|
В рамках данной лабораторной работы будут развёрнуты следующие сервисы:
|
||||||
|
1. **Gitea** - система управления версиями
|
||||||
|
2. **Postgres** - реляционая база данных
|
||||||
|
3. **Rabbitmq** - брокер сообщений
|
||||||
|
|
||||||
|
Инструкции к запуску контейнеров и пояснения к ним находятся в файле ```docker-compose.yml```
|
||||||
|
|
||||||
|
## Порядок запуска
|
||||||
|
#### 1. Установить docker или убедиться, что он установлен
|
||||||
|
#### 2. Перейти в папку с файлом ```docker-compose.yml```
|
||||||
|
#### 3. Выполнить команду в терминале: ```docker-compose up --build --remove-orphans```
|
||||||
|
|
||||||
|
Проверить успешность запуска можно командой ```docker ps -a```. Если всё прошло успешно, то в терминале будет написано:
|
||||||
|
```
|
||||||
|
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||||
|
1a794331b32b gitea/gitea:1.22.2 "/usr/bin/entrypoint…" 20 seconds ago Up 18 seconds 0.0.0.0:3000->3000/tcp, 0.0.0.0:222->22/tcp polevoy_sergey_lab_1-gitea-1
|
||||||
|
b5fe33c61c1d rabbitmq:3-management "docker-entrypoint.s…" 20 seconds ago Up 19 seconds 4369/tcp, 5671/tcp, 0.0.0.0:5672->5672/tcp, 15671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp rabbitmq
|
||||||
|
3d2db73d15c5 postgres:14 "docker-entrypoint.s…" 20 seconds ago Up 19 seconds 0.0.0.0:5432->5432/tcp polevoy_sergey_lab_1-postgres-1
|
||||||
|
```
|
||||||
|
|
||||||
|
Работать со всеми перечисленными сервисами можно сразу после запуска за исключением **gitea**. После первого запуска необходимо зайти на сервис, выполнить первоначальную настройку и создать суперпользователя.
|
||||||
|
|
||||||
|
## Видеодемонстрация работы
|
||||||
|
### Видео доступно по [ссылке](https://disk.yandex.ru/i/3Out4mUV6NEJuA)
|
Loading…
Reference in New Issue
Block a user