一、安装
1.获取rabbitmq镜像
docker pull rabbitmq
2.启动rabbitmq
docker run -it -d --name rabbitMQ --hostname=rabbitmq --restart=always
--privileged=true -p 5672:5672 -p 15672:15672
-e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin
-v /data/rabbitmq:/data rabbitmq
--privileged=true 使用该参数,container内的root拥有真正的root权限
--restart=always 设置docker启动自动启动
-p 5672:5672 -p 15672:15672设置端口
-e RABBITMQ_DEFAULT_USER=admin 设置默认账号密码
3.进入容器,启动rabbitmq 网页管理功能
命令:rabbitmq-plugins enable rabbitmq_management
[root@# localhost /]# docker exec -it rabbitMQ /bin/bash
root@10b846b4ef65:/#
root@10b846b4ef65:/# rabbitmq-plugins enable rabbitmq_management
Enabling plugins on node rabbit@10b846b4ef65:
rabbitmq_management
The following plugins have been configured:
rabbitmq_management
rabbitmq_management_agent
rabbitmq_prometheus
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@10b846b4ef65...
The following plugins have been enabled:
rabbitmq_management
started 1 plugins.
4.docker下安装延时队列插件
在主机下下载rabbitmq延时队列插件
[root@# localhost rabbitmq]# wget https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/3.9.0/rabbitmq_delayed_message_exchange-3.9.0.ez
然后将插件文件复制到rabbitmq docker容器 的plugins目录下
[root@# localhost rabbitmq]# docker cp rabbitmq_delayed_message_exchange-3.9.0.ez rabbitMQ:plugins
进入容器启动插件
[root@# localhost rabbitmq]# docker exec -it rabbitMQ /bin/bash
root@rabbitmq:/plugins# rabbitmq-plugins enable rabbitmq_delayed_message_exchange
Enabling plugins on node rabbit@rabbitmq:
rabbitmq_delayed_message_exchange
The following plugins have been configured:
rabbitmq_delayed_message_exchange
rabbitmq_management
rabbitmq_management_agent
rabbitmq_prometheus
rabbitmq_web_dispatch
Applying plugin configuration to rabbit@rabbitmq...
The following plugins have been enabled:
rabbitmq_delayed_message_exchange
started 1 plugins.
二、出现的问题:
1.Stats in management UI are disabled on this node
解决方法:
查看配置文件
cat /etc/rabbitmq/conf.d/management_agent.disable_metrics_collector.conf
将true修改为false
root@rabbitmq:/# cd /etc/rabbitmq/conf.d/
root@rabbitmq:/etc/rabbitmq/conf.d# echo management_agent.disable_metrics_collector = false > management_agent.disable_metrics_collector.conf