如果已经安装好docker
1.获取镜像
登录rabbitmq官网找到docker镜像,选择想要的镜像的tag
https://www.rabbitmq.com/download.html
https://hub.docker.com/_/rabbitmq
如果需要访问web管理页面,就选择tag为management的
直接用docker search 搜索,默认下载标签为latest的镜像(无法打开web管理页面)
docker search
下载镜像
docker pull rabbitmq:management
创建容器并运行(15672是管理界面的端口,5672是服务的端口。这里顺便将管理系统的用户名和密码设置为admin admin123)
docker run -dit --name myRabbitMQ -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin123 -p 15672:15672 -p 5672:5672 -p 1883:1883 -p 15675:15675 rabbitmq:management
15672 是rabbitmq management管理界面默认访问端口
5672 是amqp默认端口
1883 是mqtt tcp协议默认端口
15675 是web_mqtt ws协议默认端口
默认安装后我们需要手动开启 rabbitmq_mqtt插件和rabbitmq_web_mqtt插件。
docker exec <容器ID> rabbitmq-plugins enable rabbitmq_mqtt
docker exec <容器ID> rabbitmq-plugins enable rabbitmq_web_mqtt
后台管理输入用户名密码登录
登录之后就可以查看不过全是英文一开始会有点蒙
这里提一下在开发中用到的:在结合这个页面看就不蒙了
交换器 》路由键》消息列队名称
这样比喻:可以有多个交换器一个交换器下有多个路由键,一个路由键下有多个消息队列名称
查看是否支持MQTT协议
如果有:http/web-mqtt :15675 和 mqtt:883 说明rabbitmq_mqtt插件和rabbitmq_web_mqtt插件以安装成功
通常我们会用MQTT做物联网通讯指令:如esp32开发板MQTT控制硬件指令
列如我有一台硬件设备以及链接到MQTT
通过MQTT给硬件发送消息
下面是我的硬件设备已经收到了MQTT的消息:如果做过单片机开发都不陌生 Arduino