问题描述:CentoOS中,Docker创建了一个RabbitMQ容器并运行,但是主机连接虚拟机的RabbitMQ管理页面,却无法打开
原因:直接 docker run - i rabbitmq ,(默认不开启管理后台网页)
开启对应端口后是不能直接访问它的管理后台,需要额外的命令开启

方法一:修改RabbitMQ参数,开启管理页面

docker run -di --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 rabbitmq

再依次执行下面的命令

docker ps -a
docker exec -it `RabbitMQ镜像ID` /bin/bash
rabbitmq-plugins enable rabbitmq_management

方法二:直接安装带管理页面版本

docker pull rabbitmq:management

docker run -di --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 rabbitmq:management

方法三:
docker安装rabbitMQ(目录映射、端口映射、设置web管理用户名和密码)

拉取镜像(management版本是带有web管理界面的)

docker pull rabbitmq:3.7.14-management

根据下载的镜像创建和启动容器 (配置用户/密码:root/123456)
默认用户名/密码: guest/guest

docker run -di --name rabbitmq -p 5672:5672 -p 15672:15672 -v `pwd`/rabbitmq:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=myvhost -e RABBITMQ_DEFAULT_USER=root -e RABBITMQ_DEFAULT_PASS=123456 rabbitmq:3.7.14-management

-i:表示运行容器
-d:在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加-it两个参数,创建后就会自动进去容器)。
-di:后台运行容器; –name:指定容器名;
-p:指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
-v:映射目录或文件(文件共享),格式 宿主机目录:容器目录 –hostname:主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

主机浏览器打开web管理端,成功
在这里插入图片描述

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐