
RabbitMQ 是一个开源的消息代理软件,使用高级消息队列协议(AMQP)来进行消息传递。它允许应用程序、系统或服务之间通过消息队列异步传递消息,从而实现解耦、扩展和可靠的数据传递。
RabbitMQ 提供了多种工作模式,常见的有:
以下是一个基本的 docker-compose.yml
文件示例:
version: '3.1'
services:
rabbitmq:
image: rabbitmq:3.12.6-management
container_name: rabbitmq
restart: always
# 节点名 rabbit@rabbitserver,不然会去容器ID
hostname: rabbitserver
environment:
# 默认虚拟机名
RABBITMQ_DEFAULT_VHOST: admin_vhost
# 用户名
RABBITMQ_DEFAULT_USER: admin
# 密码
RABBITMQ_DEFAULT_PASS: 123
# 指定自定义插件目录
RABBITMQ_PLUGINS_DIR: '/plugins:/myplugins'
ports:
- "5672:5672"
- "15672:15672"
volumes:
- /home/apps/rabbitmq/mnt/data:/var/lib/rabbitmq
- /home/apps/rabbitmq/mnt/myplugins:/myplugins