Merge pull request 'afanasev_dmitry_lab_1 is ready' (#142) from afanasev_dmitry_lab_1 into main
Reviewed-on: #142
This commit is contained in:
commit
358ae2153c
44
afanasev_dmitry_lab_1/README.md
Normal file
44
afanasev_dmitry_lab_1/README.md
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# Лабораторная работа 1
|
||||||
|
|
||||||
|
## Описание
|
||||||
|
Данная лабораторная работа предназначена для настройки 3 сервисов — **Gitea**, **Redmine** и БД **MySQL** — с использованием Docker Compose. **Gitea** — это лёгкая система контроля версий с веб-интерфейсом, а **Redmine** — система управления проектами и задачами, а также баг-трекер. **MySQL** — база данных, используемая Redmine для хранения данных.
|
||||||
|
|
||||||
|
## Запуск проекта
|
||||||
|
1. Убедитесь, что у вас установлены **Docker** и **Docker Compose**.
|
||||||
|
2. Клонируйте репозиторий с данным проектом или создайте файл `docker-compose.yml` с конфигурацией, представленной там.
|
||||||
|
3. В командной строке перейдите в директорию с файлом `docker-compose.yml`.
|
||||||
|
4. Запустите команды:
|
||||||
|
```bash
|
||||||
|
docker-compose up -d
|
||||||
|
```
|
||||||
|
Эта команда запустит контейнеры в фоновом режиме.
|
||||||
|
5. После запуска:
|
||||||
|
- Gitea будет доступен по адресу: [http://localhost:3000](http://localhost:3000)
|
||||||
|
- Redmine будет доступен по адресу: [http://localhost:8080](http://localhost:8080)
|
||||||
|
|
||||||
|
## Конфигурация
|
||||||
|
В файле `docker-compose.yml` определены следующие сервисы:
|
||||||
|
- **Gitea**:
|
||||||
|
- Запускается из официального образа `gitea/gitea:latest`.
|
||||||
|
- Использует `SQLite` для хранения данных.
|
||||||
|
- Настроен на порту 3000 для веб-доступа и 2222 для SSH.
|
||||||
|
- **Redmine**:
|
||||||
|
- Запускается из официального образа `redmine`.
|
||||||
|
- Подключен к базе данных MySQL.
|
||||||
|
- Доступен на порту 8080.
|
||||||
|
- **MySQL**:
|
||||||
|
- Запускается из образа `mysql:8.0`.
|
||||||
|
- Используется Redmine для хранения данных.
|
||||||
|
- Настроен с дефолтными пользователем, базой и паролем.
|
||||||
|
|
||||||
|
## Остановка проекта
|
||||||
|
Для остановки контейнеров запустите:
|
||||||
|
```bash
|
||||||
|
docker-compose down
|
||||||
|
```
|
||||||
|
Это завершит работу всех контейнеров и освободит порты.
|
||||||
|
|
||||||
|
## Примечания
|
||||||
|
- При необходимости вы можете изменить порты или другие параметры, отредактировав файл `docker-compose.yml`.
|
||||||
|
- Данные хранятся в именованных томах `gitea_data` и `db_data`, что позволяет сохранять данные при перезапуске контейнеров.
|
||||||
|
- Ссылка на демонстрацию работы программы: https://vk.com/video215756667_456239451?list=ln-AMZSRDejYptijuOt9u
|
46
afanasev_dmitry_lab_1/docker-compose.yml
Normal file
46
afanasev_dmitry_lab_1/docker-compose.yml
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
version: '3.9' # Версия Docker Compose
|
||||||
|
|
||||||
|
services:
|
||||||
|
# Gitea сервис
|
||||||
|
gitea:
|
||||||
|
image: gitea/gitea:latest # Образ Gitea для запуска сервиса
|
||||||
|
container_name: gitea # Имя контейнера для удобства
|
||||||
|
environment: # Переменные среды
|
||||||
|
USER_UID: 1000 # UID пользователя внутри контейнера
|
||||||
|
USER_GID: 1000 # GID пользователя внутри контейнера
|
||||||
|
GITEA__database__DB_TYPE: sqlite3 # Тип бд (SQLite для простоты)
|
||||||
|
GITEA__database__PATH: /data/gitea/gitea.db # Путь к базе данных
|
||||||
|
GITEA__server__ROOT_URL: http://localhost:3000 # URL для доступа
|
||||||
|
GITEA__server__HTTP_PORT: 3000 # Порт для веб-интерфейса
|
||||||
|
volumes:
|
||||||
|
- gitea_data:/data # Монтирование директории данных для сохранения данных
|
||||||
|
ports:
|
||||||
|
- "3000:3000" # Порт для доступа к веб-интерфейсу Gitea
|
||||||
|
- "2222:22" # SSH порт для клонирования репозиториев
|
||||||
|
restart: always # Автоматический перезапуск контейнера в случае сбоя
|
||||||
|
|
||||||
|
# Redmine сервис
|
||||||
|
redmine:
|
||||||
|
image: redmine # Образ Redmine для запуска сервиса
|
||||||
|
restart: always # Автоматический перезапуск контейнера
|
||||||
|
ports:
|
||||||
|
- 8080:3000 # Порт для доступа к веб-интерфейсу
|
||||||
|
environment: # Переменные среды
|
||||||
|
REDMINE_DB_MYSQL: db # Имя хоста бд для подключения
|
||||||
|
REDMINE_DB_PASSWORD: example # Пароль для подключения к базе данных
|
||||||
|
|
||||||
|
# MySQL база данных для Redmine
|
||||||
|
db:
|
||||||
|
image: mysql:8.0 # Образ MySQL для бд
|
||||||
|
restart: always # Автоматический перезапуск контейнера
|
||||||
|
environment: # Переменные среды
|
||||||
|
MYSQL_ROOT_PASSWORD: example # Пароль пользователя root для MySQL
|
||||||
|
MYSQL_DATABASE: redmine # Имя бд для Redmine
|
||||||
|
MYSQL_USER: user # Пользователь MySQL
|
||||||
|
MYSQL_PASSWORD: password # Пароль для пользователя MySQL
|
||||||
|
volumes:
|
||||||
|
- db_data:/var/lib/mysql # Монтирование для сохранения данных бд
|
||||||
|
|
||||||
|
volumes: # Именованные тома
|
||||||
|
gitea_data: # Том для данных Gitea
|
||||||
|
db_data: # Том для данных MySQL
|
Loading…
Reference in New Issue
Block a user