forked from Alexey/DAS_2024_1
64 lines
3.8 KiB
Markdown
64 lines
3.8 KiB
Markdown
|
# Лабораторная работа номер 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.
|