简介
香橙派Zero3是一款非常有性价比的开发板, 它采用全志 H618 64位高性能四核Cortex-A53处理器,Arm Mali-G31 MP2 GPU,支持OpenGL ES 1.0/2.0/3.2,OpenCL 2.0,Vulkan 1.1等,拥有1GB /1.5GB/2GB/4GB四种内存规格可选,支持多种视频格式的编解码,Micro-HDMI输出支持4K显示,可广泛应用于电视盒子、智能投屏设备等。
我手里的这块香橙派已经是一年前购买的了,价格是99元, 1GB版本, 它非常适合在跑一些轻量化的应用, 比如说HomeAssistant 和 MQTT服务器。 更或者是一个Nginx服务器, 用于其他开发板固件的OTA升级。
上述的香橙派Zero3 已经安装了官方的旧版1GB ram系统, 并且配置好了禁用桌面环境(只保留控制台),并且已经连接好了WIFI
Docker 安装
Docker 是一个开源的容器化平台,用于开发、部署和运行应用程序。它通过将应用程序及其依赖项打包到一个轻量级的、可移植的容器中,实现了应用程序的快速部署和跨平台运行。
1- 首先更新镜像仓库依赖。(这一段更新耗时较长)
sudo pacman -Syu
2- 安装docker
sudo pacman -S docker
3- 启动docker 符合和设置开机启动
sudo systemctl start docker sudo systemctl enable docker
4-把当前用户加入用户组, 来避免每次都是用sodu命令启动docker
sudo usermod -aG docker $USER
安装HomeAssistant
Home Assistant 是一个开源的智能家居自动化平台,旨在将各种智能设备集成到一个统一的界面中,并通过自动化规则实现设备之间的联动。它支持超过 2000 种不同的智能设备和服务,包括灯光、传感器、摄像头、媒体播放器等。
1- 首先创建一个文件夹来保存配置文件
mkdir -p ~/homeassistant/config
2- 安装docker,并且映射端口
docker run -d \ --name homeassistant \ --privileged \ --restart=unless-stopped \ -v ~/homeassistant/config:/config \ -v /etc/localtime:/etc/localtime:ro \ -p 8123:8123 \ ghcr.io/home-assistant/home-assistant:stable
此时可以看到HomeAssistant已经启动成功。
成功的使用了香橙派的IP访问了HA服务
接下来我们便可以创建账号,并且登入系统
MQTT服务器安装
Mosquitto 是一个轻量级的开源 MQTT 代理,由 Eclipse 基金会维护。它非常适合小型到中型项目。
1- 首先,创建一个目录来存储 Mosquitto 的配置文件、密码文件和数据的目录
mkdir -p /docker/mosquitto/config mkdir -p /docker/mosquitto/data mkdir -p /docker/mosquitto/log
2- 创建配置文件
#存放基本配置 touch /docker/mosquitto/config/mosquitto.conf #存放用户密码配置文件 touch /docker/mosquitto/config/pwfile.conf #日志目录 touch /docker/mosquitto/log/mosquitto.log
3- 修改配置文件
vi /docker/mosquitto/config/mosquitto.conf
4- 创建配置文件,并且指定密码文件
persistence true persistence_location /mosquitto/data log_dest file /mosquitto/log/mosquitto.log listener 1883 #协议模式,可以不指定 #protocol websockets # 关闭匿名模式 allow_anonymous false #指定密码文件 password_file /mosquitto/config/pwfile.conf
5-修改文件权限
chmod -R 755 /docker/mosquitto chmod -R 777 /docker/mosquitto/log #日志目录要最大权限
6 - 启动命令
docker run -it --name=mosquitto --privileged -p 1883:1883 -p 9100:9001 -v /docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf -v /docker/mosquitto/data:/mosquitto/data -v /docker/mosquitto/log:/mosquitto/log -v /docker/mosquitto/config/pwfile.conf:/mosquitto/config/pwfile.conf -d eclipse-mosquitto
7- 修改账号密码
docker exec -it mosquitto sh mosquitto_passwd -b /mosquitto/config/pwfile.conf test test2023 #设置账号密码
8- 重启容器
docker restart mosquitto
9- 在home Assistant中测试MQTT连接
配置成功
总结
本文详细介绍了如何在物联网开发中通过一个廉价的香橙派Zero3来部署docker 环境, 搭建HomeAssistant环境和MQTT环境。 并且成功的调试通了MQTT和homeAssistant的通讯。 后续的物联网开发都可以使用当前的环境进行基础和通讯!