Docker安装RabbitMQ
你好呀,我的老朋友!我是老寇,欢迎来到老寇IoT云平台!
# 安装
# Docker Compose脚本
services:
rabbitmq:
image: rabbitmq:4-management
container_name: rabbitmq
restart: unless-stopped
hostname: rabbitmq
ports:
# AMQP
- "5672:5672"
# Web 管理后台
- "15672:15672"
environment:
RABBITMQ_DEFAULT_USER: admin
RABBITMQ_DEFAULT_PASS: "123456"
RABBITMQ_DEFAULT_VHOST: /
volumes:
- ./rabbitmq/data:/var/lib/rabbitmq
- ./rabbitmq/log:/var/log/rabbitmq
# 运行命令
docker compose up -d rabbitmq
# 开启控制台
# 开启控制台
docker exec -it rabbitmq rabbitmq-plugins enable rabbitmq_management
# 插件列表
docker exec -it rabbitmq rabbitmq-plugins list
# 命令大全
# 状态
docker exec -it rabbitmq rabbitmqctl status
# 用户
# 查看所有用户
docker exec -it rabbitmq rabbitmqctl list_users
# 新增test_user/xxx123456
docker exec -it rabbitmq rabbitmqctl add_user xxxtest_user 'xxx123456'
# x修改密码 xxx123456789
docker exec -it rabbitmq rabbitmqctl change_password xxxtest_user 'xxx123456789'
# 设置为管理员
docker exec -it rabbitmq rabbitmqctl set_user_tags xxxtest_user administrator
# 清除管理角色标签
docker exec -it rabbitmq rabbitmqctl set_user_tags xxxtest_user
# 查看用户权限
docker exec -it rabbitmq rabbitmqctl list_user_permissions xxxtest_user
# 授予 / 虚拟主机下所有资源的配置、写入、读取权限
docker exec -it rabbitmq rabbitmqctl set_permissions -p / xxxtest_user '.*' '.*' '.*'
# 查看 / 下所有用户权限
docker exec -it rabbitmq rabbitmqctl list_permissions -p /
# 撤销权限
docker exec -it rabbitmq rabbitmqctl clear_permissions -p / xxxtest_user
# 删除用户
docker exec -it rabbitmq rabbitmqctl delete_user xxxtest_user
# 队列
# 队列列表
docker exec -it rabbitmq rabbitmqctl list_queues
# 清除队列
docker exec -it rabbitmq rabbitmctl purge_queue xxx
# 创建队列
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword declare queue name=xxx durable=true
# 查看队列数据【100条】
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword get queue=xxx队列名 count=100
# 交换机
# 交换机列表
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword list exchanges
# 创建 direct 类型交换机
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword declare exchange name=xxx type=direct durable=true
# 队列绑定交换机
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword declare binding source=xxxexchange destination=xxxqueue routing_key=xxxkey
# 查看所有绑定关系
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword list bindings
# 查看指定交换机的绑定
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword list bindings source=xxxexchange
# 查看指定队列的绑定
docker exec -it rabbitmq rabbitmqadmin -u xxxuser -p xxxpassword list bindings destination=xxxqueue
# 查看所有绑定关系
docker exec -it rabbitmq rabbitmqctl list_bindings
我是老寇,我们下次再见啦!
上次更新: 11/8/2026, 9:53:56 PM