i.MX8 运行 EMQX

内核配置

EMQX 和 Docker 的运行依赖一些内核组件,因此需要先配置好相关内核子系统及其功能特性。

Device Drivers  --->
    [*] Network device support  --->
    <*>     Virtual ethernet pair device 

Docker 方式安装

1. 下载 emqx 镜像

https://github.com/emqx/emqx/releases 中找到需要的 emqx 镜像,并下载。例如 emqx-docker-4.3.5-alpine-arm64v8.zip。

wget https://github.com/emqx/emqx/releases/download/v4.3.5/emqx-docker-4.3.5-alpine-amd64.zip

2. 解压 emqx 镜像

root@imx8mqevk:~# unzip emqx-docker-4.3.5-alpine-arm64v8.zip
Archive:  emqx-docker-4.3.5-alpine-arm64v8.zip
  inflating: emqx-docker-4.3.5-alpine-arm64v8

3. 加载 emqx 镜像

root@imx8mqevk:~# docker load < emqx-docker-4.3.5-alpine-arm64v8
3fbe34a1663b: Loading layer [==================================================>]  5.593MB/5.593MB
4bf095312e12: Loading layer [==================================================>]  6.309MB/6.309MB
d2bebade616c: Loading layer [==================================================>]  69.03MB/69.03MB
417818d6f46b: Loading layer [==================================================>]  9.728kB/9.728kB
f919dd0259b5: Loading layer [==================================================>]  7.652MB/7.652MB
fe8eff798431: Loading layer [==================================================>]   12.8kB/12.8kB
ccfe25d9e769: Loading layer [==================================================>]  69.03MB/69.03MB
Loaded image: emqx/emqx:4.3.5-alpine-arm64v8

4. 启动 emqx 容器

docker run -d --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:4.3.5-alpine-arm64v8

为了方便起见,可以以自动删除容器的方式启动:

docker run -it --rm -d --name emqx -p 1883:1883 -p 8081:8081 -p 8083:8083 -p 8084:8084 -p 8883:8883 -p 18083:18083 emqx/emqx:4.3.5-alpine-arm64v8

启动成功,查看 emqx 容器的状态:

docker ps

5. 浏览器访问

浏览器输入:http://192.168.31.150:18083

输入账号密码(默认账号为 admin,默认密码为 public)即可进入 EMQX 后台。

Yocto 方式安装

OpenEmbedded Layer Index 搜索 emqx 相关的 recipes。

切换到 Yocto 工程的 sources 目录,执行下列命令拉取 meta-erlang 层(此处使用 zeus 分支)。

git clone https://github.com/joaohf/meta-erlang -b zeus

构建 emqx

bitbake emqx

如果需要添加到文件系统,则修改 bblayers.conf 和 local.conf 配置文件,添加 layer 和 recipe 信息,之后重新构建。

Leave a Reply