由于毕业设计需要一个本地的局域网内智能家居中控,经过多方考虑,翻出了吃灰已久的树莓派3b+,同时EMQ是一款国产的高性能消息代理服务器。功能也挺强大,使用也挺简单。
本文记录如何在树莓派中搭建EMQX,硬软件背景如下:
- 树莓派3b+
- 输入arm64架构的系统,(原因是官方没有提供amd64的系统,本文刷入了Ubuntu Mate 18.04)
控诉血泪史,由于技术不到位,EMQX提供的Ubuntu的安装都是amd64位系统架构的,arm64无法安装,期间还试过了下载ZIP文件解压使用和下载EMQ源码编译都以失败告终,最后选择Docker.
Docker
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker的应用场景
- Web 应用的自动化打包和发布。
- 自动化测试和持续集成、发布。
- 在服务型环境中部署和调整数据库或其他的后台应用。
- 从头编译或者扩展现有的 或 平台来搭建自己的 。
安装步骤
- 为确保安装顺利,卸载旧的版本:
更新apt包索引:
- 在新主机上首次安装Docker Engine-Community之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker,通过HTTP获取并设置存储库:
- 更新索引:
- 添加Docker的官方GPG密钥:
通过搜索指纹的后8个字符,验证您现在是否拥有带有指纹的密钥
- 验证密钥:
会有如下反应:
- 设置稳定的存储库:
To add the nightly or test repository, add the word or (or both) after the word in the commands below. Learn about nightly and test channels.
注意:下面的子命令返回Ubuntu发行版的名称,例如。有时,在Linux Mint等发行版中,您可能需要更改 为父Ubuntu发行版。例如,如果您使用 ,则可以使用。Docker不对未经测试和不受支持的Ubuntu发行版提供任何保证。
- 更新索引:
- 安装最新版本的Docker Engine-Community和containerd,或者转到下一步安装特定版本:
7.5 要安装特定版本的Docker Engine-Community,请在存储库中列出可用版本,然后选择并安装:
一种。列出您的仓库中可用的版本:
- 检查是否成功安装v
更多的Docker命令
- 下载所需版本的EMQX版本;
- 下载对应的后:
- 导入本地镜像:
- 运行容器:
如:
- 启动emqx
- 检验是否成功安装:
初始账号:admin,密码:public