DAS_2024_1/rogashova_ekaterina_lab_3
2024-10-25 14:10:33 +04:00
..
task_service Готово 2024-10-25 14:10:33 +04:00
teacher_service Готово 2024-10-25 14:10:33 +04:00
.gitignore Готово 2024-10-25 14:10:33 +04:00
docker-compose.yml Готово 2024-10-25 14:10:33 +04:00
nginx.conf Готово 2024-10-25 14:10:33 +04:00
readme.md Готово 2024-10-25 14:10:33 +04:00
requirements.txt Готово 2024-10-25 14:10:33 +04:00

Лабораторная работа №3

Описание

Были использованы следующие сущности:

  1. Учитель. Поля: email и ФИО
  2. Задание. Поля: название, предмет и id учителя

Сущности связаны связью один ко многим. У одного учителя может быть несколько заданий, у задания только один учитель.

Для каждой сущности был написан отдельный сервис.

Код каждого сервиса представляет собой полноценное API для работы с задачами и учителями. Они включают основные операции CRUD (создание, чтение, обновление, удаление). Дополнительно можно вывести задачу с полной информацией об учителе.

В качестве хранилища данных использовалась оперативная память приложения.

Запросы к сервисам проксирует шлюз на основе Nginx. Для этого перед запуском nginx был описан конфигурационный файл nginx.conf, в котором описан прослушиваемый порт и название сервера (в блоке server), маршруты до микросервисов и параметры проксирования (в блоке location).

Конфигурация Nginx направлена на организацию и упрощение работы с микросервисами.

Тестирование производится через расширение RestMan.

Как запустить это?

Для запуска данной конфигурации Docker Compose выполните следующие шаги:

  1. Открыть терминал и перейти в директорию, где находится docker-compose.yml.
  2. Выполнить команду
docker compose up --build
  1. Дождаться, пока Docker Compose запустит все контейнеры.

Видео

Работоспособность представлена на видео.