在Linux上用docker安装RabbitMQ
前提条件:了解Linux和docker容器
-
拉取指定版本的RabbitMQ镜像
这里以rabbitmq:3.8-management举例:
docker pull rabbitmq:3.8-management
-
运行镜像
docker run \ -e RABBITMQ_DEFAULT_USER=默认的用户名 \ -e RABBITMQ_DEFAULT_PASS=默认的密码 \ -v /opt/rabbitmq/data:/var/lib/rabbitmq \ --name mq --hostname mq \ -p 15672:15672 \ -p 5672:5672 \ --restart=always \ -d \ rabbitmq:3.8-management
如
docker run \ -e RABBITMQ_DEFAULT_USER=root \ -e RABBITMQ_DEFAULT_PASS=root \ -v /opt/rabbitmq/data:/var/lib/rabbitmq \ --name mq --hostname mq \ -p 15672:15672 \ -p 5672:5672 \ --restart=always \ -d \ rabbitmq:3.8-management
端口解释:15672为rabbitmq控制台端口 5672为消息通信端口 使用15672端口就可以访问控制台端口
-
访问RabbitMQ管理界面:http://ip地址:15672/
如图可能存在的问题
- 云服务器防火墙拦截问题:开放云服务器上对应的15672和5672端口
- 插件问题:进入docker里,开启管理界面
docker exec -it 容器ID /bin/bash\
rabbitmq-plugins enable rabbitmq_management
exit
-
待解决疑问
访问云服务器的80端口后,Nginx反向代理到指定端口,Nginx的nginx.conf该如何设置能够得到正确的管理界面。目前由nginx反向代理到本地云服务器上的15672端口时,得到的是空html页面。希望有友友能够帮我解决这个问题。