From 27005d803478e7907947f93cfa3701de34d520a5 Mon Sep 17 00:00:00 2001 From: ujijrujijr Date: Wed, 24 Sep 2025 22:34:19 +0400 Subject: [PATCH] Revert "Merge branch 'main' of https://git.is.ulstu.ru/Alexey/DAS_2025_1" This reverts commit 4fe8cf6f2a5dd932d6c739940035d1ab9d4c070f, reversing changes made to ca742800b1647412dbf4672f2643ea7455ac2f8a. --- README.md | 1 - lab_2.md | 76 ------------------------------------------------------- 2 files changed, 77 deletions(-) delete mode 100644 lab_2.md diff --git a/README.md b/README.md index c7dd682..00ec7b4 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,6 @@ | № | л/р | |---|-----| | 1 | [Знакомство с docker и docker-compose](https://git.is.ulstu.ru/Alexey/DAS_2025_1/src/branch/main/lab_1.md) | -| 2 | [Разработка простейшего распределённого приложения](https://git.is.ulstu.ru/Alexey/DAS_2025_1/src/branch/main/lab_2.md) | **Воркфлоу по сдаче лабораторных работ** diff --git a/lab_2.md b/lab_2.md deleted file mode 100644 index eded237..0000000 --- a/lab_2.md +++ /dev/null @@ -1,76 +0,0 @@ -# Лабораторная работа №2 - Разработка простейшего распределённого приложения - -**Цель**: изучение техники создания простого распределённого приложения. - -**Задачи**: - -1. **Согласно вашему варианту** (выбирайте любой) разработать два приложения такие, что результат первого является исходными данными для второго. -2. Изучить файлы сборки образов docker и разработать их для созданных приложений. -3. Собрать файл `docker-compose.yml` для запуска приложений. - Разобраться с монтированием каталогов из хост-системы. -4. Правильно закоммитить результат без лишних файлов. -5. Оформить pull request по правилам и отправить его на проверку. - -## Разработка двух приложений - -Необходимо разработать 2 приложения согласно варианту. -Описание поиска своего варианта расположено ниже. - -Общее для всех вариантов: - -* Язык разработки приложений — любой. -* Содержимое исходных файлов - целые числа. -* Результат выполнения программы 2 необходимо дополнительно вывести на экран. - -> Автор советует использовать dotnet, java, go или python. - -Каждая программа должна лежать в отдельной подпапке в репозитории, например: `moiseev-vv-lab_2/worker-1` и `moiseev-vv-lab_2/worker-2`. - -## Добавление файлов сборки `Dockerfile` - -В каталоге с каждым приложением необходимо создать файл `Dockerfile`, где будут расположены инструкции по сборке образа с вашими приложениями. - -> Для многих языков программирования шаблоны `Dockerfile` можно найти в Интернете. - -В рамках задания необходимо расписать, за что отвечает каждая значимая строка в `Dockerfile`. -Хотя бы одном. - -Если у вас используется multi-stage build (как в примере выше, где в одном `Dockerfile` несколько конструкций `FROM`), необходимо расписать, зачем. - -## Формирование файла `docker-compose.yml` - -Необходимо в каталоге с вашей работой создать файл `docker-compose.yml`, чтобы можно было собрать и запустить программы следующей командой: - -``` -distributed-computing\tasks\moiseev-vv\lab_2$ docker compose up --build -``` - -> До `$` - каталог относительно корня репозитория, чтобы понять, откуда запускается `docker compose`. - -Необходимо, чтобы в файле было: - -1. Два сервиса. - Каждый соответствует вашим программам. -2. Объявлена директива `build` для каждого сервиса. -3. Была работа с монтированием папок. -4. Были описаны зависимости одного сервиса от другого. - -## Варианты - -### Варианты программы 1: - -0. Ищет в каталоге `/var/data` самый большой по объёму файл и перекладывает его в `/var/result/data.txt`. -1. Ищет в каталоге `/var/data` файл с наибольшим количеством строк и перекладывает его в `/var/result/data.txt`. -2. Формирует файл `/var/result/data.txt` из первых строк всех файлов каталога `/var/data`. -3. Формирует файл `/var/result/data.txt` так, что каждая строка файла - количество строк в файлах из каталога `/var/data`. -4. Формирует файл `/var/result/data.txt` так, что каждая строка файла - количество символов в именах файлов из каталога `/var/data`. -5. Ищет в каталоге `/var/data` файл с самым коротким названием и перекладывает его в `/var/result/data.txt`. -6. Берёт из каталога `/var/data` случайный файл и перекладывает его в `/var/result/data.txt`. - -### Варианты программы 2: - -0. Сохраняет произведение первого и последнего числа из файла `/var/data/data.txt` в `/var/result/result.txt`. -1. Ищет набольшее число из файла `/var/data/data.txt` и сохраняет его вторую степень в `/var/result/result.txt`. -2. Ищет наименьшее число из файла `/var/data/data.txt` и сохраняет его третью степень в `/var/result/result.txt`. -3. Ищет набольшее число из файла `/var/data/data.txt` и сохраняет количество таких чисел из последовательности в `/var/result/result.txt`. -4. Ищет наименьшее число из файла `/var/data/data.txt` и сохраняет количество таких чисел из последовательности в `/var/result/result.txt`. \ No newline at end of file