DAS_2024_1/lazarev_andrey_lab_4/RabbitMQ_app/docker-compose.yml
2024-11-04 02:01:55 +04:00

45 lines
3.3 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

services:
rabbitmq: # Сервис для RabbitMQ (брокера сообщений)
image: rabbitmq:3-management # Используемый образ RabbitMQ с веб-интерфейсом управления
ports:
- "5672:5672" # Порт для подключения клиентов к RabbitMQ
- "15672:15672" # Порт для доступа к веб-интерфейсу управления
environment: # Переменные окружения для настройки RabbitMQ
- RABBITMQ_DEFAULT_USER=guest # Имя пользователя по умолчанию
- RABBITMQ_DEFAULT_PASS=guest # Пароль пользователя по умолчанию
healthcheck:
test: ["CMD", "rabbitmqctl", "status"] # Проверка работоспособности RabbitMQ
interval: 10s # Интервал между проверками (10 секунд)
timeout: 5s # Тайм-аут для проверки (5 секунд)
retries: 5 # Количество попыток при неудачных проверках
publisher: # Сервис для запуска издателя (publisher)
build:
context: . # Использует текущую директорию для сборки Docker-образа
command: python publisher.py # Команда для запуска издателя
environment:
- PYTHONUNBUFFERED=1 # Отключение буферизации вывода Python
depends_on:
rabbitmq:
condition: service_healthy # Ожидает готовности RabbitMQ перед запуском
consumer_1: # Сервис для запуска первого потребителя (consumer_1)
build:
context: . # Использует текущую директорию для сборки Docker-образа
command: python consumer_1.py # Команда для запуска первого потребителя
environment:
- PYTHONUNBUFFERED=1 # Отключение буферизации вывода Python
depends_on:
rabbitmq:
condition: service_healthy # Ожидает готовности RabbitMQ перед запуском
consumer_2: # Сервис для запуска второго потребителя (consumer_2)
build:
context: . # Использует текущую директорию для сборки Docker-образа
command: python consumer_2.py # Команда для запуска второго потребителя
environment:
- PYTHONUNBUFFERED=1 # Отключение буферизации вывода Python
depends_on:
rabbitmq:
condition: service_healthy # Ожидает готовности RabbitMQ перед запуском