# Лабораторная работа номер 2 > Здравствуйте меня зовут Балахонов Данила группа ПИбд-42 > > *— Балахонов Данила ПИбд-42* Видео лабораторной работы номер доступно по этой [ссылке](пока что ее нет). ## Как запустить лабораторную работу номер 2? ### Необходимые компоненты для запуска лабораторной работы номер 2 > Здесь рассказана установка необходимых компонентов для запуска лабораторной работы номер 2 под дистрибутив GNU/Linux **Ubuntu**. Для запуска лабораторной работы номер 2 необходимы такие компоненты: - Git - Docker - Docker compose Чтобы установить **Git**, необходимо ввести данные команды в командную строку: ``` bash sudo apt-get update sudo apt-get install git ``` Чтобы установить **Docker** и **Docker compose**, стоит ввести такие команды: ``` bash # Настройка репозитория Docker sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update # Установка Docker и его компонентов sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ``` ### Запуск лабораторной работы номер 2 Для запуска лабораторной работы номер 2 необходимо **склонировать** репозиторий в любую папку и **перейти на ветку** balakhonov_danila_lab_2. Далее в папке с `docker-compose.yaml` нужно вызвать такую команду: ``` bash sudo docker-compose up -d --build ``` Таким образом контейнеры будут подготовлены и запущены в фоновом режиме. ## Какие технологии были использованы? Для выполнения лабораторной работы номер 2 были применены такие технологии, как: - Dockerfile - Docker compose - Git - .NET SDK и F# в частности Сервисы были написаны с использованием .NET SDK на языке F#. ## Что делает лабораторная работа номер 2? Лабораторная работа номер 2 запускает два сервиса: 1. Сервис, который берёт из каталога `/var/data` случайный файл и перекладывает его в `/var/result/data.txt` 2. Сервис, который ищет набольшее число из файла `/var/result/data.txt` и сохраняет количество таких чисел из последовательности в `/var/result/result.txt` Благодаря лабораторной работе номер 2 были получены навыки создания Dockerfile для развертывания проектов в контейнерах, а также их связки с помощью docker-compose.yaml.