部署:

查看镜像文件:docker search rabbitmq

docker qidong mq_rabbitmq

拉取镜像:(注意:这里需要配置国内镜像源,不然很慢)

下面二选一拉取镜像:
docker pull rabbitmq  	#拉取进行镜像
或
docker pull rabbitmq:3.8.14	#拉取指定版本镜像

查看镜像:docker images

docker qidong mq_当前用户_02

启动:(注意:如果是需要使用MQTT协议,一定要开启1883端口和MQTT插件)

docker run -d --name rabbitmq -v /usr/local/rabbitmq:/etc/rabbitmq -p 15672:15672 -p 5672:5672 -p 1883:1883 --restart=always rabbitmq:latest

参数说明:

-d :表示作为守护进程在后台运行;
–name:容器命名为rabbitmq;
-p:表示端口映射,<宿主机端口>:<容器端口>,这里开启了15672、5672和1883端口映射,1883是rabbitmq的MQTT服务默认端口号;
-v:将容器中的目录挂载到宿主机上,<宿主机>:<容器>
–restart=always:设置容器自动启动
最后的rabbitmq:版本号,表示构建使用的镜像

查看容器是否启动成功:

docker ps

访问:

1.关闭防火墙,或者开放对应端口,否者会报404

2.然后使用CMD命令窗口,检查端口是否通信正常(自己ip,port)

docker qidong mq_容器_03

3.浏览器访问客户端页面

如果上面端口可以通信,但是浏览器确加载不了登陆页面,需要检查客户端页面插件是否开启

开启插件:首先使用命令进入容器

docker exec -it 容器名称 bash         #进入容器   
rabbitmq-plugins enable rabbitmq_management  #开启插件

如果输入账号密码后显示不是私密连接(原因:账号密码错误,默认账户密码都是 guest

docker qidong mq_当前用户_04

使用guest账号密码登录爆user can only log in via localhost

docker qidong mq_容器_05

创建新用户:(以下命令需要进入容器执行)

创建用户:rabbitmqctl  add_user  Username  Password  (自己的账号密码)

查看当前用户列表 :rabbitmqctl  list_users

设定角色:rabbitmqctl  set_user_tags  Username  administrator  (设定管理员权限)

然后在使用你新创建的用户访问基本就能成功

登录成功后记得给当前用户设定权限:

docker qidong mq_rabbitmq_06

(上面是AMQP协议)如果你需要使用MQTT协议,则需要在开始MQTT协议插件,不然连接不成功

开启MQTT协议插件命令(需要进入容器执行命令)

进入容器: docker exec -it 容器id /bin/bash

开启插件:rabbitmq-plugins enable rabbitmq_management rabbitmq_mqtt

注意:一定要开启1883端口,因为MQTT默认端口是1883,不然很有可能连接失败,开始后使用MQTTX工具进行测试连接

docker qidong mq_容器_07

最后就可以访问成功了,代码也可以成功连接