树莓派编译安装 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 控制台,具体操作可查看官方文档

转载于:https://www.cnblogs.com/HintLee/p/9499451.html

### 如何在树莓派操作系统上安装配置 EMQX MQTT Broker #### 准备工作 确保树莓派已更新至最新状态并安装了 Docker 环境。这一步骤对于后续顺利部署 EMQX 至关重要[^1]。 #### 安装Docker 如果尚未安装 Docker,在终端执行如下命令来完成安装: ```bash curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh ``` 确认 Docker 正常运作,通过 `docker --version` 查看版本号。 #### 获取EMQX镜像 利用官方提供的 Docker 镜像简化安装流程。打开终端窗口,输入以下指令下载 EMQX 的 Docker 镜像文件: ```bash docker pull emqx/emqx:latest ``` 此操作会自动从远程仓库拉取最新的稳定版 EMQX 到本地机器中[^3]。 #### 启动容器实例 创建一个新的 Docker 容器用于运行 EMQX 服务,并将其绑定到指定端口以便外部访问。具体做法是在命令行里键入下面这段话: ```bash docker run -d \ --name emqx \ -p 1883:1883 \ -p 8083:8083 \ -p 8084:8084 \ -p 18083:18083 \ emqx/emqx ``` 上述参数定义了多个网络映射关系,允许不同类型的客户端连接到 broker 上;其中 `-d` 参数表示以后台模式启动容器,而 `--name` 设定了该容器的名字为 "emqx"。 #### 测试与验证 一旦容器成功启动后,可以通过 Web UI 或者命令行工具来进行初步的功能检测。尝试打开网页浏览器,访问 http://<树莓派 IP 地址>:18083/ 即可看到 EMQX 控制面板界面[^4]。 另外还可以借助 mosquitto_pub 和 mosquitto_sub 这两个轻量级的 MQTT 工具做简单的发布订阅实验,以此检验消息传递机制是否正常工作。 #### 开机自启设置 为了让 EMQX 能够跟随系统一起自动加载,可以考虑将之前建立的服务加入到系统的初始化进程中去。编辑 `/etc/rc.local` 文件,在 exit 0 行前添加一行代码指向启动脚本的位置即可实现这一目的。 ```bash #!/bin/bash ... # Add this line before 'exit 0' docker start emqx || true ... exit 0 ``` 这样每次重启设备之后都不必手动重新开启 EMQX 了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值