RabbitMQ
RabbitMQ — программный брокер сообщений на основе стандарта AMQP — тиражируемое связующее программное обеспечение, ориентированное на обработку сообщений.
Пример развёртывания
dockhost compose apply https://docs.dockhost.ru/example/message-broker/rabbitmq.yaml
version: 1
project: example
# Environments configuration
environment:
variables:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: <password> # auto generate password
RABBITMQ_ERLANG_COOKIE: <string:32> # auto generate cookie
configs:
rabbitmq.plugins: |
[rabbitmq_management, rabbitmq_shovel, rabbitmq_shovel_management, rabbitmq_stream, rabbitmq_stream_management].
rabbitmq.conf: |
queue_master_locator=min-masters
cluster_partition_handling=autoheal
# Volumes configuration
volumes:
rabbitmq:
type: ssd
size: 1Gib
# Containers configuration
containers:
rabbitmq:
image: rabbitmq:3.12-management
resources:
memory: 1024MiB
cpu: 1
cpuFraction: 20
ports:
- '4369'
- '5672'
- '5552'
- '6000-6500'
- '25672'
- '35672-35682'
- '15672'
- '61613'
- '1883'
- '15674'
- '15675'
- '15692'
variables:
RABBITMQ_DEFAULT_USER: $RABBITMQ_DEFAULT_USER
RABBITMQ_DEFAULT_PASS: $RABBITMQ_DEFAULT_PASS
RABBITMQ_ERLANG_COOKIE: $RABBITMQ_ERLANG_COOKIE
configs:
- name: rabbitmq.plugins
mountPath: /etc/rabbitmq/enabled_plugins
- name: rabbitmq.conf
mountPath: /etc/rabbitmq/rabbitmq.conf
volumes:
- name: rabbitmq
mountPath: /var/lib/rabbitmq/mnesia
# Network configuration
network:
domains:
rabbitmq: ~
routes:
rabbitmq:
domain: rabbitmq
path: /
service: rabbitmq
port: 15672
Дополнительные сведения о контейнере можно найти по адресу https://hub.docker.com/_/rabbitmq
dockhost network port-forward rabbitmq 15672:15672
Удаление примера
dockhost compose delete https://docs.dockhost.ru/example/message-broker/rabbitmq.yaml