distributed-computing/tasks/nikiforova-ts/Lab_2/Readme.md

52 lines
3.3 KiB
Markdown
Raw Normal View History

# Отчёт по лабораторной работе №2
Выполнила: студентка гр. ИСЭбд-41 Никифорова Татьяна Сергеевна.
Вариант программы 1: Ищет в каталоге /var/data файл с самым коротким названием и перекладывает его в /var/result/data.txt.
Вариант программы 2: Ищет набольшее число из файла /var/data/data.txt и сохраняет его вторую степень в /var/result/result.txt.
# Создание приложений
Создали два приложения с помощью команд:
```yam
dotnet new console -o worker-1
dotnet new console -o worker-2
```
программа 1: Ищет в каталоге /var/data файл с самым коротким названием и перекладывает его в /var/result/data.txt.
[Текст программы worker-1](worker-1/Program.cs)
Программа 2: Ищет набольшее число из файла /var/data/data.txt и сохраняет его вторую степень в /var/result/result.txt
[Текст программы worker-2](worker-2/Program.cs)
Cоздан файл [.gitignore](.gitignore) с помощью команды dotnet new gitignore.
# Настройка окуржения
Для связи двух приложений воспользуемся следующей схемой:
Для каждой программы были созданы файлы Dockerfile ([программа 1](worker-1/Dockerfile), [программа 2](worker-1/Dockerfile)) с подробным описанием процесса сборки.
Был создан файл [docker-compose.yml](docker-compose.yml), в котором указан манифест для запуска распределённого приложения.
Дополнительно был создан файл [.dockerignore](.dockerignore) и дополнен [.gitignore](.gitignore), чтобы исключить для сборки и коммита всё лишнее.
# Сборка и запуск
В каталог ./data помещены 2 файла: another_data.txt и data.txt.
Для запуска приложения необходимо ввести команду `docker compose up --build`.
Результат запуска после сборки:
```
[+] Running 3/3
✔ Network lab_2_default Created
✔ Container lab_2-worker-1-1 Created
✔ Container lab_2-worker-2-1 Created
Attaching to lab_2-worker-1-1, lab_2-worker-2-1
lab_2-worker-1-1 exited with code 0
lab_2-worker-2-1 | Максимальное число во входных данных: 4
lab_2-worker-2-1 | Квадрат максимального числа: 16
lab_2-worker-2-1 exited with code 0
```
В результате в каталоге `./result` создался файл `result.txt` с содержимым `16`, что соответствует входным данным.