简装mosquitto 集群 docker方式

第一步:准备三台机器

第二步:在网上拉取镜像 docker pull eclipse-mosquitto

第三步:在主机器上的/opt/mosquittoconf/ 下建立 mosquitto.conf

放入

connection mytest1
address 从机器1ip地址:1883
topic room1/# both 2 sensor/ myhouse/

connection mytest2
address 从机器2ip地址:1883
topic room1/# both 2 sensor/ myhouse/


bridge_protocol_version mqttv311
notifications true
cleansession true
try_private true
start_type automatic

 

解释:

connection 连接名称,可以随便取

address 连接的另外服务器地址和端口号,如果有多台服务器,可以写多个address

topic 主题名称,“#”为通配符,表示发布端可以在room1/后面接任何文字

both 服务质量,2代表只有一次(可以查看第一篇博文对MQTT的详细介绍)

sensor/  本地前缀标识,可以随便命名

myhouse/ 远程前缀标识,可以随便命名

bridge_protocol_version mqttv311 桥连接协议版本MQTT3.11

notifications  是否发布桥接的状态信息

cleansession  桥接断开时,是否清除远程服务器中的消息

start_type 桥接模式,目前有三种:automatic、lazy、once

设置好之后保存退出。

第四步:继续创建 config.mk

内容参考 https://github.com/eclipse/mosquitto/blob/master/config.mk

找到WITH_BRIDGE:=yes 将签名的“#”号去掉开启桥连接模式。(默认是开启的,为了无误查看一下)

第五步:然后在两个从机器上启动 

docker run -d --name mytest12 -p 1883:1883 -p 9001:9001 eclipse-mosquitto

第六步:然后再启动主机器上的

docker run -d --name mqtttest -p 1883:1883 -p 9001:9001 -v /opt/mosquittoconf/mosquitto.conf:/mosquitto/config/mosquitto.conf -v /opt/mosquittoconf/config.mk:/mosquitto/config/config.mk  eclipse-mosquitto

 

第七步:进入容器查看

docker exec -it 容器名 /bin/sh

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值