一. 关于EMQ X
5G 时代,开源物联网 MQTT 服务器
EMQX 是全球领先的开源物联网MQTT 5.0服务器,高并发、低延时,内置强大的规则引擎,支持边缘及云端部署,是5G时代大型物联网应用首选技术方案。
EMQ X Broker 是基于高并发的 Erlang/OTP 语言平台开发,支持百万级连接和分布式集群架构,发布订阅模式的国产开源 MQTT 消息服务器。
EMQ X Broker 在全球物联网市场广泛应用。无论是产品原型设计、物联网创业公司、还是大规模的商业部署,EMQ X Broker 都支持开源免费使用。
二. 快速安装方式
EMQ X Broker 应用已分享到Rainbond应用市场,通过 Rainbond社区开源商店 即可一键安装。
三. 应用制作流程
制作过程使用了EMQ X Broker 官方提供的Docker镜像,因为官方镜像使用时区为 UTC,所以在原docker镜像基础上做了修改,将时区设置为 Asia/Shanghai。
FROM emqx/emqx:4.2.2
USER root
RUN apk update \
&& apk add tzdata \
&& cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo "Asia/Shanghai" > /etc/timezone
使用镜像的方式进行部署
docker run -d --name emqx -p 1883:1883 -p 8083:8083 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:4.2.2
在部署时Rainbond会自动检测镜像中的 VOLUM 配置,将存储自动挂载出来,在实际部署过程中发现把相关目录挂载出来后组件不能正常启动,缺少相关文件,在Github上向EMQ X 官方提交了issue,经过官方技术人员的帮助,最终存储配置挂载如下,组件正常启动。
打开相关端口
组件部署完成后,需要调整相关端口策略,相关策略参考官方文档 1
四. 访问web界面
在当前版本中,EMQ X Dashboard 被默认启用,访问 18083 端口的对外服务域名,即可访问到EMQ X Broker web页面,默认用户名及密码 admin/public 。
设置中文
打开WebSocket支持
8083 8084 端口打开http协议对外服务后,需要开启WebSocket支持,在 应用界面–>网关 中找到对应的域名后点击 参数配置,将WebSocket支持打开即可
测试WebSocket支持
在 EMQ X Dashboard 界面中点击 工具–>Websocket,填写 主机地址,即 8083 端口的对外域名,端口为 80,点击连接,状态为已连接时即可正常连接。
EMQ X官方文档:https://docs.emqx.net/broker/latest/cn/