From 1fde600d9242ed6234d9697866739d7af91871e1 Mon Sep 17 00:00:00 2001 From: NikGapon Date: Tue, 17 Dec 2024 01:29:01 +0400 Subject: [PATCH 1/3] gapon first lab --- gapon_nikolay_lab_1/README.md | 32 +++++++++++++ gapon_nikolay_lab_1/docker-compose.yml | 65 ++++++++++++++++++++++++++ gapon_nikolay_lab_1/env | 6 +++ 3 files changed, 103 insertions(+) create mode 100644 gapon_nikolay_lab_1/README.md create mode 100644 gapon_nikolay_lab_1/docker-compose.yml create mode 100644 gapon_nikolay_lab_1/env diff --git a/gapon_nikolay_lab_1/README.md b/gapon_nikolay_lab_1/README.md new file mode 100644 index 0000000..13539a3 --- /dev/null +++ b/gapon_nikolay_lab_1/README.md @@ -0,0 +1,32 @@ +# Лабораторная работа 1 - Знакомство с Docker и Docker Compose +## Гапон Николай // ИСЭбд-41 + +# Описание работы + +> Цель +Изучение современных технологий контейнеризации. + +> Задачи +1. Установка Docker Desktop. +2. Принципы Docker. +3. Изучение Docker Compose. +4. Разворачивание сервисов. +5. Оформление отчёта. + +> Ход выполнения работы +1. Открыть документацию docker и страницу на habr +2. Скачать и установить docker desktop +3. Смотрим на docker hub как поднять с помощью docker-compose -> gitea, mediawiki, postgresql +4. Запускаем в терминале 'docker-compose up' +4. Исправляем ошибки +5. Записываем видео +6. pushим ветку на git +7. кидаем mrку (merge request) + +> Инструкция по запуску +1. Скачать и установить Docker, если ещё не сделано +2. Перейти в gapon_nikolay_lab_1 (cd ./gapon_nikolay_lab_1/) +3. Выполнить в терминале 'docker-compose up' +4. Проверить порты, на которых docker поднял контейнеры + +> Видео демонстрация работы diff --git a/gapon_nikolay_lab_1/docker-compose.yml b/gapon_nikolay_lab_1/docker-compose.yml new file mode 100644 index 0000000..ae554f7 --- /dev/null +++ b/gapon_nikolay_lab_1/docker-compose.yml @@ -0,0 +1,65 @@ +version: '3.8' + +# Определение сервисов +services: + # Сервис базы данных PostgreSQL + db: + image: postgres:latest # Готовый образ PostgreSQL + container_name: postgres_db + restart: always + environment: + - POSTGRES_DB=${POSTGRES_DB:-mydb} # Имя БД + - POSTGRES_USER=${POSTGRES_USER:-admin} # Пользователь БД + - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-admin} # Пароль пользователя БД + volumes: + - db_data:/var/lib/postgresql/data # Монтирование тома для хранения данных БД + networks: + - app_network + + # Сервис Gitea + gitea: + image: gitea/gitea:latest # Готовый образ Gitea + container_name: gitea + restart: always + ports: + - "${GITEA_WEB_PORT:-3000}:3000" # Проброс веб-порта + - "${GITEA_SSH_PORT:-2222}:22" # Проброс SSH-порта + volumes: + - gitea_data:/data # Монтирование тома для постоянного хранения данных + environment: + - USER_UID=1000 # UID пользователя внутри контейнера + - USER_GID=1000 # GID пользователя внутри контейнера + - DB_TYPE=postgres + - DB_HOST=db:5432 + - DB_NAME=${POSTGRES_DB:-mydb} + - DB_USER=${POSTGRES_USER:-admin} + - DB_PASSWD=${POSTGRES_PASSWORD:-admin} + depends_on: + - db # Gitea запускается после PostgreSQL + networks: + - app_network + + # Сервис MediaWiki + mediawiki: + image: mediawiki:latest # Готовый образ MediaWiki + container_name: mediawiki + restart: always + ports: + - "${MEDIAWIKI_PORT:-8080}:80" # Проброс порта + volumes: + - mediawiki_data:/var/www/html # Монтирование тома для постоянного хранения данных + environment: + - MEDIAWIKI_DB_HOST=db # Хост базы данных + - MEDIAWIKI_DB_NAME=${POSTGRES_DB:-mydb} # Имя БД для MediaWiki + - MEDIAWIKI_DB_USER=${POSTGRES_USER:-admin} # Пользователь БД + - MEDIAWIKI_DB_PASSWORD=${POSTGRES_PASSWORD:-admin} # Пароль пользователя БД + depends_on: + - db # MediaWiki запускается после PostgreSQL + networks: + - app_network + +# Определение volumes для хранения данных вне контейнеров +volumes: + db_data: + gitea_data: + mediawiki_data: diff --git a/gapon_nikolay_lab_1/env b/gapon_nikolay_lab_1/env new file mode 100644 index 0000000..e8f4fba --- /dev/null +++ b/gapon_nikolay_lab_1/env @@ -0,0 +1,6 @@ +POSTGRES_DB=mydb +POSTGRES_USER=admin +POSTGRES_PASSWORD=admin +GITEA_WEB_PORT=3000 +GITEA_SSH_PORT=2222 +MEDIAWIKI_PORT=8080 \ No newline at end of file From 68f4f1ef9861ad23a540d08ae0f8d9d12f1e41a6 Mon Sep 17 00:00:00 2001 From: NikGapon Date: Tue, 17 Dec 2024 01:50:25 +0400 Subject: [PATCH 2/3] gapon first lab --- gapon_nikolay_lab_1/docker-compose.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gapon_nikolay_lab_1/docker-compose.yml b/gapon_nikolay_lab_1/docker-compose.yml index ae554f7..9c6f31e 100644 --- a/gapon_nikolay_lab_1/docker-compose.yml +++ b/gapon_nikolay_lab_1/docker-compose.yml @@ -63,3 +63,7 @@ volumes: db_data: gitea_data: mediawiki_data: + +networks: + app_network: + driver: bridge From 99d7f1e859f85bd91f56abbe6ffcd1293417c368 Mon Sep 17 00:00:00 2001 From: NikGapon Date: Tue, 17 Dec 2024 02:07:41 +0400 Subject: [PATCH 3/3] gapon first lab --- gapon_nikolay_lab_1/README.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/gapon_nikolay_lab_1/README.md b/gapon_nikolay_lab_1/README.md index 13539a3..187f59c 100644 --- a/gapon_nikolay_lab_1/README.md +++ b/gapon_nikolay_lab_1/README.md @@ -3,30 +3,31 @@ # Описание работы -> Цель -Изучение современных технологий контейнеризации. +> Цель +Освоение технологий контейнеризации для современных приложений. > Задачи -1. Установка Docker Desktop. -2. Принципы Docker. -3. Изучение Docker Compose. -4. Разворачивание сервисов. -5. Оформление отчёта. +1. Установка и настройка Docker Desktop. +2. Изучение базовых принципов работы Docker. +3. Ознакомление с Docker Compose. +4. Развёртывание сервисов. +5. Подготовка отчёта о проделанной работе. > Ход выполнения работы -1. Открыть документацию docker и страницу на habr -2. Скачать и установить docker desktop -3. Смотрим на docker hub как поднять с помощью docker-compose -> gitea, mediawiki, postgresql -4. Запускаем в терминале 'docker-compose up' -4. Исправляем ошибки -5. Записываем видео -6. pushим ветку на git -7. кидаем mrку (merge request) +1. Изучить официальную документацию Docker и статьи на Habr. +2. Скачать и установить Docker Desktop. +3. Найти на Docker Hub примеры запуска Gitea, MediaWiki и PostgreSQL с помощью Docker Compose. +4. Выполнить команду `docker-compose up` в терминале. +5. Устранить ошибки, если они возникнут. +6. Записать демонстрационное видео работы сервисов. +7. Запушить изменения в ветку на Git. +8. Создать Merge Request (MR) для проверки. > Инструкция по запуску -1. Скачать и установить Docker, если ещё не сделано +1. Скачать и установить Docker, если ещё не установлен 2. Перейти в gapon_nikolay_lab_1 (cd ./gapon_nikolay_lab_1/) 3. Выполнить в терминале 'docker-compose up' 4. Проверить порты, на которых docker поднял контейнеры > Видео демонстрация работы +https://disk.yandex.ru/i/TgQoHrpZrZlGLA \ No newline at end of file