• 树莓派编译安装 EMQ 服务器


    前言

    EMQ 是一款开源的物联网 MQTT 消息服务器,使用 Erlang/OTP 语言平台设计,在 DIY 智能家居时可以作为网关,前几天摸索了一下在树莓派中安装 EMQ 的方法,记录一下。

    步骤

    安装 Erlang

    sudo apt-get install erlang-dev erlang-edoc erlang-eunit erlang-reltool erlang-crypto erlang-eldap erlang-public-key erlang-runtime-tools erlang-ssl -y
    sudo apt-get install wget libssl-dev ncurses-dev -y
    

    从源码编译安装 OTP,编译需要安装 Java 运行环境,参考这篇

    sudo apt-get install libssl1.0-dev unixodbc unixodbc-dev xsltproc fop libxml2-utils -y
    wget http://www.erlang.org/download/otp_src_19.3.tar.gz
    tar -zxvf otp_src_19.3.tar.gz
    cd otp_src_19.3/
    ./configure
    

    提示“wxWidgets not found, wx will NOT be usable”

    sudo apt-get install libgtk2.0-dev -y
    sudo apt-get install libglw1-mesa libglw1-mesa-dev -y
    sudo apt-get install freeglut3-dev -y
    wget https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.4/wxWidgets-3.0.4.tar.bz2
    tar jxvf wxWidgets-3.0.4.tar.bz2
    cd wxWidgets-3.0.4/
    ./configure --enable-unicode --with-opengl
    make -j4
    sudo make install
    

    回到 OTP 的编译和安装

    cd otp_src_19.3/
    ./configure
    make -j4
    sudo make install
    

    下载 emq 源码编译安装,make 过程需要联网下载,所以可能需要重试几次

    git clone https://github.com/emqtt/emq-relx.git
    cd emq-relx
    make
    sudo cp -r ./_rel/emqttd /usr/local/lib
    

    添加 emq 的 systemd 启动

    sudo vim.tiny /lib/systemd/system/emqttd.service
    

    添加内容

    [Unit]
    Description=emqttd
    After=network-online.target
    
    [Service]
    Type=forking
    User=root
    Group=root
    WorkingDirectory=/usr/local/lib/emqttd
    ExecStart=/usr/local/lib/emqttd/bin/emqttd start
    ExecStop=/usr/local/lib/emqttd/bin/emqttd stop
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    

    允许开机启动和启动 emq

    sudo systemctl enable emqttd.service
    sudo systemctl start emqttd.service
    

    启动成功后在浏览器输入树莓派 IP:18083 即可看到 Dashboard 控制台,具体操作可查看官方文档

  • 相关阅读:
    Python脚本抓取京东手机的配置信息
    Python中的Pandas模块
    Python中的Pandas模块
    XML和JSON数据格式
    XML和JSON数据格式
    Linux运维比较常用的一些脚本
    Linux运维比较常用的一些脚本
    Keepalived高可用集群
    Keepalived高可用集群
    Linux中正则表达式和字符串的查询、替换(tr/diff/wc/find)
  • 原文地址:https://www.cnblogs.com/HintLee/p/9499451.html
Copyright © 2020-2023  润新知