diff --git a/haliullov_kamil_lab_1/README.md b/haliullov_kamil_lab_1/README.md new file mode 100644 index 0000000..310640d --- /dev/null +++ b/haliullov_kamil_lab_1/README.md @@ -0,0 +1,139 @@ +# Лабораторная работа №1 - Знакомство с docker и docker-compose + +## Задание + +Нужно развернуть 3 сервиса в контейнерах docker через docker-compose. + +Необходимые требования: + +* Несколько контейнеров. +* Хотя бы один volume. +* Хотя бы один порт, проброшенный на хост. +* Разворачивание системы должно пройти до конца. + +## Запуск ЛР: + +Введем в терминале команду: +``` +docker-compose up -d +``` +## Использованные сервисы: + + 1. ```db``` - база данные MySQL + + 2. ```redmine``` - Система учёта багов, т.е. баг-трекер. + + 3. ```gitea``` - Сервис для хранения репозиториев git, на котором работает этот репозиторий. + + 4. ```wordpress``` - платформа для управления контентом + +## Описание программы: + +Развернутые сервисы: + +### wordpress + +``` +wordpress: # Определение сервиса WordPress + image: wordpress:latest # Используемый образ WordPress последней версии + containername: wp_app # Имя контейнера + restart: always + ports: # Настройка портов + - "8000:80" + environment: # Переменные окружения + WORDPRESSDBHOST: ${DBHOST} + WORDPRESSDBUSER: ${DBUSER} + WORDPRESSDBPASSWORD: ${DBPASSWORD} + WORDPRESSDBNAME: ${DBNAME} + WORDPRESSADMINUSER: admin + WORDPRESSADMINPASSWORD: adminpassword + WORDPRESSADMINEMAIL: admin@example.com + volumes: # Настройка томов + - wordpress_data:/var/www/html + dependson: # Зависимости + - db_wordpress # Зависит от сервиса MySQL + +``` +Эта строка отвечает за образ сброки: +``` +image: wordpress:latest +``` +Задание имени контейнера: +``` +containername: wp_app +``` +Проброс портов: +``` +ports: + - 8000:80 +``` +Тома для хранения данных: +``` +volumes: + - wordpress_data:/var/www/html + +``` +Переменные окружения +``` +environment: + WORDPRESSDBHOST: ${DBHOST} + WORDPRESSDBUSER: ${DBUSER} + WORDPRESSDBPASSWORD: ${DBPASSWORD} + WORDPRESSDBNAME: ${DBNAME} + WORDPRESSADMINUSER: admin + WORDPRESSADMINPASSWORD: adminpassword + WORDPRESSADMINEMAIL: admin@example.com + +``` +Зависимости + +``` +dependson: + - db_wordpress + +``` +Аналогично со другими сервисами: + +### mediawiki + +``` +mediawiki: # Определение сервиса MediaWiki + image: mediawiki:1.35 # Используемый образ MediaWiki версии 1.35 + ports: # Настройка портов + - "8080:80" + containername: mediawiki # Имя контейнера + volumes: # Настройка томов + - mediawiki_data:/var/www/html/images mediawiki: # Определение сервиса MediaWiki + image: mediawiki:1.35 # Используемый образ MediaWiki версии 1.35 + ports: # Настройка портов + - "8080:80" + containername: mediawiki # Имя контейнера + volumes: # Настройка томов + - mediawiki_data:/var/www/html/images + +``` + +### redmine + +``` + +gitea: + image: gitea/gitea:latest + container_name: gitea + ports: + - "8082:3000" + environment: + - USER_UID=1000 + - USER_GID=1000 + volumes: + - gitea_data:/data + +``` + +# Скрины работы программы: + +Панель консоли +![](lab_1.png "") + +# Видео +https://disk.yandex.ru/i/H4_tFURvpQuqQA diff --git a/haliullov_kamil_lab_1/docker-compose.yml b/haliullov_kamil_lab_1/docker-compose.yml new file mode 100644 index 0000000..32c6720 --- /dev/null +++ b/haliullov_kamil_lab_1/docker-compose.yml @@ -0,0 +1,54 @@ + + +services: + wordpress: + image: wordpress:latest + container_name: wordpress + ports: + - "8080:80" + environment: + WORDPRESS_DB_HOST: db + WORDPRESS_DB_USER: example_user + WORDPRESS_DB_PASSWORD: example_password + WORDPRESS_DB_NAME: example_db + volumes: + - wordpress_data:/var/www/html + depends_on: + - db + + db: + image: mysql:5.7 + container_name: wordpress_db + environment: + MYSQL_DATABASE: example_db + MYSQL_USER: example_user + MYSQL_PASSWORD: example_password + MYSQL_ROOT_PASSWORD: root_password + volumes: + - db_data:/var/lib/mysql + + redmine: + image: redmine:latest + container_name: redmine + ports: + - "3000:3000" + volumes: + - redmine_data:/usr/src/redmine/files + + + gitea: + image: gitea/gitea:latest + container_name: gitea + ports: + - "8082:3000" + environment: + - USER_UID=1000 + - USER_GID=1000 + volumes: + - gitea_data:/data + +volumes: + wordpress_data: + db_data: + redmine_data: + gitea_data: diff --git a/haliullov_kamil_lab_1/lab_1.png b/haliullov_kamil_lab_1/lab_1.png new file mode 100644 index 0000000..d45a88b Binary files /dev/null and b/haliullov_kamil_lab_1/lab_1.png differ