Linux下用源码编译安装EMQ

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiaoye319/article/details/89670631

       其实已经写过一篇Linux下用EMQ通用包安装EMQ,但是还是得写一篇用源码编译安装EMQ,其实还是用通用包安装最方便,这是为什么要用源码编译安装呢,那么复杂?其实用通用包安装的,EMQ自带的默认插件可以直接使用,但是如果你要自己增加额外的插件,例如kafka的插件,EMQ本身没有这个插件,所以就得自己修改EMQ的源码,修改以后只能通过源码编译安装的方式才能使你增加的插件起作用。

       EMQ 消息服务器基于 Erlang/OTP 平台开发,项目托管的 GitHub 管理维护,源码编译依赖 Erlang 环境和 git 客户端。因此,必须先安装好Erlang 环境和 git 客户端。

       注:EMQ R2.3+ 依赖 Erlang R20+ 版本,EMQ X R3.0 依赖 Erlang R21+ 版本,gitHub要求最低git1.7.2版本的。

       这里特么的还是出现一个坑,官网说2.3+依赖于Erlang R20+,但是当你使用Erlang R21时,你会发现能编译成功,但是console启动不了EMQ编译后的包!!!我改成19.3版本的就行了

一、Erlang 环境和 git 客户端的安装

       Erlang 环境的安装:戳这里

       git 客户端的安装:戳这里

二、下载emqtt的源码:

注:这里出现一个问题,你访问EMQ官网切换不同的版本,选择源码编译安装,其提供的源码的github地址其实指向的是最新版本的EMQ源码(坑爹坑爹坑爹)

官网针对2.0和3.0提供的EMQ的源码网址,其实都是最新版本的源码:

git clone https://github.com/emqtt/emq-relx.git(2.0+),git clone https://github.com/emqx/emqx-rel.git(3.0+)

1、所以如果你想要使用的不是最新版的EMQ,那么你就得进行如下一顿操作。如果你使用的是最新版本的,请跳过步骤1,进入步骤2

       1.1根据网址进入EMQ的gitHub地址,默认是mater分支且是最新代码,也就是最新版本

       1.2选择Tags,切换到你想要的版本,我这里想要安装的是2.3.11的版本

       1.3 切换到对应的Tags的文件下,点击下图中的Clone or download-->Download ZIP,把想要安装版本的源码的压缩包下载下来

       1.4 上传zip文件到服务器上,解压,然后跳过步骤2执行步骤三以及以后步骤

2、下载源码:

三、 执行命令:cd emq-relx && make(2.0+),cd emqx-relx && make(3.0+)

出现以下页面则代表成功。

   2.3.11

      3.0+

注:如果中间因为网络不稳定等问题,导致连接不到github,然后报错,那么不要慌,在emq-relx文件下再次执行make,它会自动检测,已经编译的文件夹会自动跳过,不会重复编译 ;

四、在emq-relx目录下,执行cd _rel/emqttd && ./bin/emqttd console(2.0+),cd _rel/emqx && ./bin/emqx console(3.0+)

1.编译成功后,可执行程序包在目录:_rel/emqttd(2.0+),_rel/emqx(3.0+)
2.控制台启动编译的 EMQ 程序包:cd _rel/emqttd && ./bin/emqttd console(2.0+),cd _rel/emqx && ./bin/emqx console(3.0+)

2.0+

3.0+ 

五、执行 cd _rel/emqttd && ./bin/emqttd start(2.0+),cd _rel/emqx && ./bin/emqx start(3.0+) 

    (2.0+)

   (3.0+)

六、浏览器访问Dashboard控制台,自己的ip+18083端口

七、暂停EMQ,cd _rel/emqttd && ./bin/emqttd stop(2.0+),cd _rel/emqx && ./bin/emqx stop(3.0+)

   (2.0+)

  (3.0+)

猜你喜欢

转载自blog.csdn.net/xiaoye319/article/details/89670631