DAS_2024_1/nugaev_damir_lab_2
2024-12-25 10:02:12 +04:00
..
app_1 nugaev_damir_lab_2 is ready 2024-12-25 10:02:12 +04:00
app_2 nugaev_damir_lab_2 is ready 2024-12-25 10:02:12 +04:00
generator nugaev_damir_lab_2 is ready 2024-12-25 10:02:12 +04:00
docker-compose.yml nugaev_damir_lab_2 is ready 2024-12-25 10:02:12 +04:00
README.md nugaev_damir_lab_2 is ready 2024-12-25 10:02:12 +04:00

Лабораторная работа №2 - Разработка простейшего распределённого приложения

Задание

  • Разработать два приложения такие, что результат первого является исходными данными для второго.
  • Изучить файлы сборки образов docker и разработать их для созданных приложений и правильно закоммитить решение
  • Собрать файл docker-compose.yml для запуска приложений.

Варианты задания:

 1. Первое приложение берёт из каталога /var/data случайный файл и перекладывает его в /var/result/data.txt

 2. Второе приложение сохраняет произведение первого и последнего числа из файла /var/result/data.txt в /var/result/result.txt

Запуск работы программы

  1. Убедиться, что установлены необходимые технологии:
    • Docker: Платформа для контейнеризации приложений.
    • Docker Compose: Инструмент для запуска многоконтейнерных приложений на основе docker-compose.yaml. Обычно поставляется вместе с Docker. Чтобы проверить, установлена ли утилита, нужно запустить команду:
    docker-compose --version
  1. В директории, где находится файл docker-compose.yaml, выполнить следующую команду для запуска всех сервисов:
    docker-compose up --build

Эта команда сначала выполнит сборку, а затем запустит контейнеры.

  1. После успешного запуска можно перейти в каталог проекта и увидеть папку data со сгенерированными файлами и папку result, в которой два текстовых файла:
    • data.txt - файл, полученный после выполнения первой программы.
    • result.txt -файл, полученный после выполнения второй программы.

Описание работы:

  1. Генератор файлов generate_files.py, генерирует случайные файлы с числами и сохраняет их в папке data.
  2. Первое приложение app.py, случайным образом получает один файл из папки data и копирует его содержимое в result/data.txt.
  3. Второе приложение app.py, кнаходит произведение первого ипоследнего чисел из result/data.txt и записывает в result/result.txt.
  4. Файла docker-compose.yml docker-compose.yml посторчно описан в комментариях в коде.

Файл Docker построчно описан в коде на прмере Dockcer первого сервиса app_1.

Видеозапись работы программмы доступна по следующей ссылке

https://cloud.mail.ru/public/wfwF/9nwUPjHcN