首先过程很简单.
第一步:查找RabbitMQ镜像
docker search rabbitmq
第二部:拉取RabbitMQ镜像
docker pull rabbitmq:management
这里有两个版本
使用docker pull rabbitmq 拉取的镜像时不带控制台的
使用docker pull rabbitmq:management带有控制台,我们这里选择带有控制台的
拉取完成之后我们可以用docker images 命令查看一下,是否已经拉去成功,这个过程只要网络没问题一般不会失败。
第四步:运行RabbitMQ镜像文件
端口说明:
这里我只启用这两个,如果有其它业务请自行开启
15672:控制台端口,RabbitMQ安装成功之后可以直接访问localhost:15672进入控制台,账号密码默认:guest guest
5672:client端通信口,必须指定,我们连接RabbitMQ的话就必须用client端通信口
一下几种方式可自行选择其中一种:
(1)普通运行,指的是端口等什么都不改,全部默认。
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
(2)把默认端口改掉
docker run -itd --name rabbitmq -p 5673:5672 -p 15673:15672 rabbitmq:management
(3)修改目录端口并进行目录映射
docker run -itd --name rabbitmq -v /home/rabbitmq/etc/rabbitmq:/etc/rabbitmq -v /home/rabbitmq/lib/rabbitmq:/var/lib/rabbitmq -v /home/rabbitmq/log/rabbitmq/:/var/log/rabbitmq -p 5673:5672 -p 15673:15672 --privileged=true rabbitmq:management
第五步:查看RabbitMQ是否运行成功,并且端口是否修改成功。
docker ps -a
第六步:如果出现以下情形,说明rabbitMQ创建成功了,但是没有启动,正常应该是直接启动的。
这时候需要运行
docker logs rabbitmq
如果出现以下情况,说明没有权限。需要进入容器中查看 /etc/rabbitmq/rabbitmq.conf 的权限。
进入容器、查看权限命令
docker exec -it 容器ID /bin/bash
cd /etc/rabbitmq/
ls -l
cat /etc/passwd
运行完 ls -l 可发现,如图
运行完 cat /etc/passwd可发现,如图
第七步:按【Ctrl+P+Q】快捷键回到宿主机,执行如下命令
chown -R 999:999 '挂载文件夹'
第八步:再次运行RabbitMQ镜像,可发现服务成功安装并运行。
第九步:开启访问控制台权限
先执行,进入容器
docker exec -it 容器ID /bin/bash
再执行,修改权限
rabbitmq-plugins enable rabbitmq_management
之后可以到浏览器访问啦localhost:15672