Windows
- WSL2
- Образ Ubuntu для wsl
- Docker desktop (или установленный Docker engine в wsl)
Linux
- Docker engine или Docker desktop
- Скачать проект
- В папке с проектом ввести команду
docker compose up -d
(илиdocker-compose up -d
в зависимости от версии docker'a) - Дождаться установки образов и старта контейнеров
Запускаемые контейнеры
- Nginx (reverse proxy)
- Worker (nodejs service)
- Api (nodejs service)
- RabbitMQ
Первый старт контейнера с RabbitMQ может занять некоторое время (установка плагинов, около 30сек)
После старта всех контейнеров Вам будут доступны:
- RabbitMQ веб-интерфейс http://localhost:15672/ (login -
user
, password -password
) - Api http://localhost:5001/api/sendMessage
Для проверки работы сервисов на эндпоинт http://localhost:5001/api/sendMessage
требуется послать HTTP POST запрос с BODY в виде JSON содержащий любое сообщение в формате:
{
"text": "my new message"
}
После чего сервис вернет результат:
{
"status": "ok",
"message": {
"text": "my new message",
"id": "lkw6066xymycb5mj85o",
"jobStartDateTime": "2023-08-03T09:48:16.089Z",
"jobEndDateTime": "2023-08-03T09:48:17.999Z"
}
}
Обработка запроса может занимать от нескольких миллисекунд до нескольких секунд (эмуляция выполнения задания)
Логи сервисов worker
и api
можно посмотреть стандартными средствами Docker (через desktop версию или командой docker compose logs -f 'имя контейнера'
), после отправки запроса они транслируются на каждом важном этапе (публикация, изъятие из очередей)