一篇群晖docker安装MQ的说明

背景

1、想当年,有个叫斐某或某讯的公司,推出一系列的智能设备,成了某些人的心头好,也可能成了某些人的心头恨。当时我被蝇头小利冲晕了头脑,,结果花了大几万买下插座、盒子、路由器等,没有办法只好让它们继续发光发热,压榨他们的每一分价值,以平复我@X@XX%&%X的心情。复活插座,并结合emqx用来控制家里的吞金兽看电视的时间(远程断电)。

2、前天急忙赶时间发的文章,被值认为是真“细”,“水”的不行。可我自认为是纯干货呀,只是干的没有水,难以下咽。

所以本次特地补充一篇“水”文,并且要水到润的要溢出、四处流淌的感觉。

相关设备

1、TC1,没有照片。参考值友paochu_2007的文章《捡到即赚到,TC1智能排插--涅槃重生全过程分享》复活了这个万金插座。

2、群晖DS220+,不再发购买记录了,没啥用。大家可以参考值友lanboss的文章《普通家庭升级NAS 群晖DS220+ 亚马逊海淘加内存、加防尘

为啥要用EMQX

在安装emqx前,我们先了解下此为何物。 EMQ X (Erlang/Enterprise/Elastic MQTT Broker) 是基于 Erlang/OTP 平台开发的开源物联网 MQTT 消息服务器,开发商是杭州的一家公司,有开源版与企业版,我们直接使用开源版就好了。

对我来讲,EMQX在作为智能设备的消息中间件时,安装配置以及使用上比较简单,体验上也比较好,就选中他了。

之前是安装在一腾讯云的一台VPC上的,现在有了白群,就直接在群晖上配置使用了,抛弃掉腾讯云。

群晖Docker及EMQX安装配置

1、安装docker

登录群晖,打开套件,找到docker进行安装。见下图(我的截图是已经安装完成的,所以是“打开“)。

水一篇群晖docker安装MQ的说明

2、下载EMQX

打开刚才安装的docker,找到左侧的“注册表“菜单。

所谓注册表,就类似于一个应用市场,所有适用于docker的应用都可以在这里找到。在“注册表“中搜索emqx,找到结果中的”emqx/emqx“(这是官方的提供的镜像应用),双击进行下载,并根据提醒选择“latest”标签下载。

理论上讲“latest”标签代表的是最新的镜像,但在实际应用中没有并严格的规定及约束,所有可能是旧的版本上也会有这个标签,所以不要纠结不要在意。直接默认下载即可。

水一篇群晖docker安装MQ的说明

3、安装配置EMQX

在“映像”菜单中,找到刚才下载的EMQX镜像文件,双击进行安装。注意,每次双击安装,都会产生一个新的应用——“容器”,也可以认为一个EMQX的实例。

安装配置——常规设置

容器名称,可以按自己的喜好填写,建议选择下方的“启用自动重新启动”,这个群晖重启后就不用打开docker,手动启动EMQX了。

水一篇群晖docker安装MQ的说明

安装配置——端口设置

emqx有多个端口,常用的是18083(即WEB的控制台访问端口),1883(MQTT服务端口)。

一定要在“本地端口”上填写对应的端口,值可以与EMQX容器的端口一致,也可以不同,我们在访问时,在内网就是使用 (群晖的IP:本地端口) 进行访问。

水一篇群晖docker安装MQ的说明

安装配置——环境

docker容器中显示的时间总是与主机时间相差8小时,在docker运行环境变量中增加一个环境变量(TZ:CST-8)可以解决这个问题。

水一篇群晖docker安装MQ的说明

4、配置外网访问

以上配置完后,启动后,只能在内网访问使用。若需要外网访问,还需要在群晖的配置面板中,找到“外部访问”菜单,打开“路由器配置”选项卡,新增本机端口(即群晖的端口)与路由器端口的映射。配置好后,点击“应用”,群晖会将这些端口映射配置同步到路由器中,但前提是路由的是支持并打开了UPnP。若路由器不支持UPnP则需要登录路由配置这个映射。

水一篇群晖docker安装MQ的说明

配置生效后,就可以使用路由器获得的公网IP:设置的端口访问了。

若需要域名访问那就需要配置DDNS,网上很多这方面的介绍,就不在此赘述了。

5、使用EMQX

访问EMQX控制台

通过 内网的地址( 群晖IP:群晖侧端口),或是外网地址(路由公网IP:路由器端口)访问,若端口一直是默认的话,就是http://IP:18083, 默认的用户名密码为:admin,public 。

登录后,找到“Settings”菜单,进入后选择中文,就可以将界面切换为中文。这下是不是亲切了很多。

水一篇群晖docker安装MQ的说明

配置智能APP终端

根据《捡到即赚到,TC1智能排插--涅槃重生全过程分享》,在手机上安装好APP,添加完成设备。在设置配置EQMX的服务信息,如下图:

水一篇群晖docker安装MQ的说明

此处是我使用的DDNS域名访问。

水一篇群晖docker安装MQ的说明

智能控制效果

水一篇群晖docker安装MQ的说明


结束语

群晖的配置都参考值友的文章才完成的,在此向各位不吝分享的值友表示感谢。

EMQX部分是参考网络的文章结合自己摸索配置完成。配置时参考过一篇文章,说要设置反向代理,搞定半天没有成功,最后采购端口映射的办法才搞定的。感觉使用群晖配置EMQX的文章较少,特记录下来分享给大家。