54 lines
3.5 KiB
Markdown
54 lines
3.5 KiB
Markdown
|
# Отчёт по лабораторной работе №2
|
|||
|
Выполнил: студент гр. ИСЭбд-41 Михайлов Юрий.
|
|||
|
|
|||
|
Задание программы 1: Ищет в каталоге /var/data самый большой по объёму файл и перекладывает его в /var/result/data.txt.
|
|||
|
Задание программы 2: Ищет набольшее число из файла /var/data/data.txt и сохраняет его вторую степень в /var/result/result.txt.
|
|||
|
|
|||
|
# Создание приложений
|
|||
|
|
|||
|
Создаем 2 приложения с помощью команды:
|
|||
|
|
|||
|
```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 0.1s
|
|||
|
✔ Container lab_2-worker-1-1 Created 0.1s
|
|||
|
✔ Container lab_2-worker-2-1 Created 0.1s
|
|||
|
Attaching to lab_2-worker-1-1, lab_2-worker-2-1
|
|||
|
lab_2-worker-1-1 | Файл перемещен.
|
|||
|
lab_2-worker-1-1 exited with code 0
|
|||
|
lab_2-worker-2-1 | Мax число из файла: 14
|
|||
|
lab_2-worker-2-1 | Вторая стпень Max числа: 196
|
|||
|
lab_2-worker-2-1 exited with code 0
|
|||
|
```
|
|||
|
В результате 1 работы в каталоге `./result` создался файл `data.txt`.
|
|||
|
В результате 2 работы в каталоге `./result` создался файл `result.txt` с содержимым `196`, что соответствует входным данным.
|