version: '3.8'
services:
rabbitmq:
image: rabbitmq:3.12-management
container_name: rust-rabbit-test
ports:
- "5672:5672"
- "15672:15672"
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: password
RABBITMQ_DEFAULT_VHOST: test
volumes:
- ./rabbitmq.conf:/etc/rabbitmq/rabbitmq.conf
- ./enabled_plugins:/etc/rabbitmq/enabled_plugins
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "ping"]
interval: 10s
timeout: 5s
retries: 10
start_period: 30s
rabbitmq-delayed:
image: rabbitmq:3.12-management
container_name: rust-rabbit-delayed-test
ports:
- "5673:5672"
- "15673:15672"
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: password
RABBITMQ_DEFAULT_VHOST: delayed_test
command: >
bash -c "
rabbitmq-plugins enable --offline rabbitmq_delayed_message_exchange &&
rabbitmq-server
"
healthcheck:
test: ["CMD", "rabbitmq-diagnostics", "ping"]
interval: 10s
timeout: 5s
retries: 10
start_period: 30s