diff --git a/sergeev_evgenii_lab_2/README.md b/sergeev_evgenii_lab_2/README.md index e69de29..0a5d9cc 100644 --- a/sergeev_evgenii_lab_2/README.md +++ b/sergeev_evgenii_lab_2/README.md @@ -0,0 +1,38 @@ +## Задание +Развернуть два взаимосвязанных сервиса по варианту: + +Вариант № 4 для первой программы: +* Сервис формирует файл /var/result/data.txt так, что каждая строка файла - количество символов в именах файлов из каталога /var/data. +Вариант № 2 для второй программы: +* Сервис ищет наименьшее число из файла /var/data/data.txt и сохраняет его третью степень в /var/result/result.txt. +## Выполнение +Были написаны два сервиса на языке python с использованием технологии flask. +Они выводят на страницу кнопки, при нажатии на которые происходит соответствующие действия по заданию + +Для сервисов прописаны файлы Dockerfile, описывающие создание контейнеров: +* Для обоих контейнеров выбирается Python 9. +* Оба контейнера проявляют порты, на которых работает приложение: 8081 для первого и 8082 для второго. +* В контейнерах создаются папки /work для файлов скриптов, папки /var/result для обоих сервисов и /var/data для первого скрипта. +* В оба контейнера устанавливается пакет Flask. +* Выбирается рабочая директория /work и туда копируются файлы скриптов. +* Командой запускаются сами скрипты. + +Общий yaml-файл развёртки был настроен следующим образом: +* блок services, где перечислены разворачиваемые сервисы. +* для каждого сервиса прописан build, где объявляется его папка и докерфайл создания. +* для каждого сервиса прописано отображение портов на такие же хоста. +* для каждого сервиса прописано монтирование нужных папок хостовой системы как соответствующих папок внутри контейнеров. + +## Результат +Пример выполнения: + +Исходные данные: три файла в папке /var/data, средний файл имеет наибольшее количество строк и наибольшее число 40. + +Ход работы: нажатие кнопок на странице первого сервиса, потом - второго. +Запросы: +![Запросы](screens/requests.png) +Выходные данные: средний файл, перенесённый в /var/result/data.txt, файл result.txt там же с результатом вычислений - числом 1600. Результат выведен на страницу второго сервиса: +![Результат](screens/res.png) + +## Ссылка на видео +https://drive.google.com/file/d/1ZI1FeQ8BqPR-e_dKnUlNW7V5A39ZlTYu/view?usp=drive_link \ No newline at end of file diff --git a/sergeev_evgenii_lab_2/docker-compose.yml b/sergeev_evgenii_lab_2/docker-compose.yml new file mode 100644 index 0000000..e69de29 diff --git a/sergeev_evgenii_lab_2/service1/Dockerfile b/sergeev_evgenii_lab_2/service1/Dockerfile new file mode 100644 index 0000000..c33b0f9 --- /dev/null +++ b/sergeev_evgenii_lab_2/service1/Dockerfile @@ -0,0 +1,4 @@ +FROM ubuntu:latest +LABEL authors="User" + +ENTRYPOINT ["top", "-b"] \ No newline at end of file diff --git a/sergeev_evgenii_lab_2/service1/index.html b/sergeev_evgenii_lab_2/service1/index.html new file mode 100644 index 0000000..c0b0956 --- /dev/null +++ b/sergeev_evgenii_lab_2/service1/index.html @@ -0,0 +1,12 @@ + + +
+ +