Docker安装RabbitMQ配置MQTT
使用RabbitMQ作为MQTT服务端,Eclipse Paho作为客户端。宿主机系统为
Docker下载镜像
docker pull /library/rabbitmq:3.7.4
启动RabbitMQ
docker run -d --hostname my-rabbit --name some-rabbit -p 15672:15672 -p 5672:5672 -p 1883:1883 -p 15675:15675 /library/rabbitmq:3.7.4
注意映射容器端口
-
15672
是rabbitmq management管理界面默认访问端口 -
5672
是amqp默认端口 -
1883
是mqtt tcp协议默认端口 -
15675
是web_mqtt ws协议默认端口
启用插件
默认安装后我们需要手动开启rabbitmq_management
插件,rabbitmq_mqtt
插件和rabbitmq_web_mqtt
插件。
执行如下三条命令
docker exec <容器ID> rabbitmq-plugins enable rabbitmq_management
docker exec <容器ID> rabbitmq-plugins enable rabbitmq_mqtt
docker exec <容器ID> rabbitmq-plugins enable rabbitmq_web_mqtt
开放宿主机端口
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=5672/tcp --permanent
firewall-cmd --zone=public --add-port=1883/tcp --permanent
firewall-cmd --zone=public --add-port=15675/tcp --permanent
firewall-cmd --reload