部署 RabbitMQ ( Docker )
[Step 1] : 拉取 RabbitMQ 镜像
docker pull rabbitmq:3.8-management
[Step 2] : 创建目录 ➡️ 授权文件夹
# 创建目录
mkdir -p /data/rabbitmq/{conf,data,log}
# 授权文件夹
chmod -R 777 /data/rabbitmq/{conf,data,log}
[Step 3] : 创建 RabbitMQ 容器
docker run --restart=always --name rabbitmq \
-p 15672:15672 -p 5672:5672 \
-e RABBITMQ_DEFAULT_USER=rabbit \
-e RABBITMQ_DEFAULT_PASS=rabbit \
-v /data/rabbitmq/data:/var/lib/rabbitmq \
-v /data/rabbitmq/conf:/etc/rabbitmq \
-v /data/rabbitmq/log:/var/log/rabbitmq \
-d rabbitmq:3.8-management
相关参数解释 :
docker run
: 启动一个新的 Docker 容器。--restart=always
: 容器意外退出或 Docker 服务重启,Docker 将始终自动重新启动该容器。--name rabbitmq
: 给容器命名为rabbitmq
,以便于管理和引用该容器。-p 15672:15672 -p 5672:5672
: 端口映射。将主机的 5672 端口映射到容器的 5672 端口。-e RABBITMQ_DEFAULT_USER=rabbit
: 指定默认的 RabbitMQ 用户名为rabbit
。-e RABBITMQ_DEFAULT_PASS=rabbit
: 指定默认的 RabbitMQ 密码为rabbit
。-v /data/rabbitmq/data:/var/lib/rabbitmq
: 数据持久化-v /data/rabbitmq/conf:/etc/rabbitmq
: 配置文件持久化-v /data/rabbitmq/log:/var/log/rabbitmq
: 日志文件持久化-d
: 容器将在后台运行,而不是占用当前的终端会话。
[Step 4] : 查看 RabbitMQ 启动日志
docker logs -f rabbitmq
[Step 5] : 访问 RabbitMQ 控制台
服务器IP / 虚拟机静态IP : 15672
例如我的控制台地址为 : http://172.29.32.233:15672/
- 访问发现无法访问, 查看日志发现并没有开启控制台管理
- 开启控制台管理 : 进入 RabbitMQ 容器 ➡️ 开启控制台管理
# 进入 RabbitMQ 容器
docker exec -it rabbitmq bash
# 开启控制台管理
rabbitmq-plugins enable rabbitmq_management
[Step 6] : 登录 RabbitMQ 控制台
- 如果浏览器出现身份验证
- 进入 RabbitMQ 容器 ➡️ 添加管理员账号 ➡️ 授权账号管理员权限 ➡️ 查看账号列表
# 进入 RabbitMQ 容器
docker exec -it rabbitmq bash
# 添加管理员账号
rabbitmqctl add_user 用户名 密码
# 授权账号管理员权限
rabbitmqctl set_user_tags 用户名 administrator
# 查看账号列表
rabbitmqctl list_users
- 重启 RabbitMQ 容器➡️ 再次访问➡️ 成功访问 !
# 重启容器
docker restart rabbitmq