43 lines
1.7 KiB
Markdown
43 lines
1.7 KiB
Markdown
|
# Лабораторная работа №2
|
|||
|
## Описание
|
|||
|
|
|||
|
Этот проект предоставляет 2 контейнера с простыми python-скриптами такими, что результат первого является исходными данными для второго.
|
|||
|
### 1. Варианты
|
|||
|
|
|||
|
Для обеих программ был выбран вариант 1.
|
|||
|
|
|||
|
Вариант первой программы: **1**. Ищет в каталоге /var/data файл с наибольшим количеством строк и перекладывает его в /var/result/data.txt.
|
|||
|
|
|||
|
Вариант второй программы: **1**. Ищет набольшее число из файла /var/data/data.txt и сохраняет его вторую степень в /var/result/result.txt.
|
|||
|
|
|||
|
## Структура Dockerfile
|
|||
|
|
|||
|
Два Dockerfile имеют схожую структуру:
|
|||
|
`FROM python:3.12`
|
|||
|
`WORKDIR /app`
|
|||
|
`COPY main.py .`
|
|||
|
`VOLUME ["/var/data"]`
|
|||
|
`VOLUME ["/var/result"]`
|
|||
|
`CMD ["python", "main.py"]`
|
|||
|
|
|||
|
## 3. Docker Compose
|
|||
|
`services:`
|
|||
|
`first:`
|
|||
|
`build: ./worker_1/`
|
|||
|
|
|||
|
`volumes:`
|
|||
|
`- ./data:/var/data`
|
|||
|
`- ./result_first:/var/result`
|
|||
|
`second:`
|
|||
|
`build: ./worker_2/`
|
|||
|
`depends_on:`
|
|||
|
`- first`
|
|||
|
`volumes:`
|
|||
|
`- ./result_first:/var/data`
|
|||
|
`- ./result_second:/var/result`
|
|||
|
|
|||
|
## 4. Запуск
|
|||
|
Для запуска использовать команду `docker compose up --build`
|
|||
|
Итог работы первой программы будет в папке `result_first`, а второй - в `result_second`.
|
|||
|
|
|||
|
## Ссылка на видео: https://cloud.mail.ru/public/47de/JTUYTSUM2
|