MQTT代理商
MQTT代理是一个服务器,它接收所有客户端消息,然后将消息路由到适当的目标客户端。MQTT客户端是运行MQTT库并通过网络连接到MQTT代理的任何设备(从微控制器到功能齐全的服务器)。
LEAPS Mosquitto是一个开源MQTT代理,是docker镜像 eclipse Mosquitto:1.5.11的副本 其中集成的自定义 “mosquitto.conf” 文件位于 “/mosquito/config/mosquito.conf” 中。如需更多信息,请参阅 日食蚊子”
安装
系统要求
注解
Docker的系统要求因操作系统而异。
对于Linux,您需要一个64位架构、兼容的内核版本和特定的内核功能。
在Windows上,在启用虚拟化的Windows 10上使用Docker Desktop
在macOS上,将Docker Desktop与macOS 10.13或更高版本一起使用。在硬件方面,建议至少有2GB的RAM,以及足够的CPU和磁盘空间。
请参考 Docker 官方文件,了解最新细节
说明
在电脑上安装 Docker
此外,您还可以参考以下命令进行安装:
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh ./get-docker.sh sudo usermod -aG docker $USER
在PC上打开命令提示符或终端窗口,然后安装LEAPS Mosquitto Docker软件包,运行:
docker run -d -p 1883:1883/tcp -p 15675:15675 --name some_name leapslabs/leaps_mosquitto:latest mosquitto ---cfg /mosquitto/config/mosquitto.conf
其中
some_name
是您要为容器分配的名称,tag
是指定您想要的leaps-mosquitto
版本的标签。
推荐的运行选项
--user $(id -u):$(id -g)
在特定用户和组下运行实例.
--restart unless-stopped
在服务器崩溃时自动重启实例.
LEAPS Mosquitto安装过程将开始。
例如,在 Ubuntu (Linux) 上:
docker run -d -p 1883:1883/tcp -p 15675:15675 --name leaps_mosquitto leapslabs/leaps_mosquitto:latest mosquitto ---cfg /mosquitto/config/mosquitto.conf Unable to find image 'leapslabs/leaps_mosquitto:latest' locally latest: Pulling from leapslabs/leaps_mosquitto f7dab3ab2d6e: Already exists 2a0a6c9fa787: Already exists a211eff771d6: Already exists d362e2a9c11b: Already exists Digest: sha256:a97752d6e2d81e2701c7cd5f807eb4256322983f8aa3135da8235b647e6a9b4e Status: Downloaded newer image for leapslabs/leaps_mosquitto:latest 1f526e755ad9a356c439003b93c200802628ae9bc046827e7327d0334804b565
确认安装成功,运行:
例如,在 Ubuntu (Linux) 上:
docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b1145b72db35 leapslabs/leaps_mosquitto:latest "sh -c 'cd /app && …" 37 seconds ago 11 seconds ago leaps_mosquitto
因此,您已在PC上成功安装并启动了LEAPS Mosquitto。
开始
LEAPS Mosquitto Docker
启动LEAPS Mosquitto,运行:
docker Start LEAPS_Mosquitto
停止LEAPS Mosquitto,运行:
docker Stop LEAPS_Mosquitto
重启LEAPS Mosquitto,运行:
docker Restart LEAPS_Mosquitto
删除LEAPS Mosquitto,运行
docker rm--强制LEAPS_Mosquitto
定制选项
强制性选项
端口1883-默认侦听器端口
监听器1884启用1884的监听器
听众15675启用听众15675
推荐选项
用户蚊子-取消root权限
max_inflight_messages 200-增加每个客户端的内斗QoS消息,因为一次可以发送的QoS1很少。
max_queued_messages 1000-将每个客户端队列中保存的QoS 1和2消息的最大数量增加到当前正在运行的数量之上。
allow_zero_length_clientid true-允许客户端ID为零长度
persistent_client_expiration 14d-针对设计不佳的客户端提供自动保护
故障排除
使用以下命令
docker restart leaps_mosquitto
重新启动leaps mosquitto。检查LEAPS Mosquitto运行时的日志,打开docker桌面,选择LEAPS_Mosquitto容器。