安装MQTT Broker与ESPHome
安装Mqtt Broker与ESPHOME
安装前说明
EMQX
hass系统接入mqtt设备需要依赖MQTT服务器。这里使用docker安装一个mqtt服务器,供mqtt设备连接。
本章使用EMQX方案搭建MQTT Broker
开放端口 | 备注 |
---|---|
1883 | TCP |
8083 | WebSocket 端口 |
8084 | SSL 端口 |
8883 | TLS |
18083 | WEB Dashboard |
默认Dashboard地址 http://IP:18083
默认用户名:admin
默认密码:public
ESPHOME
esphome web主页默认路径为 http://IP:6052 ,如果无法访问,请检查防火墙是否放行该端口
docker容器网络设置为host模式时,端口直接暴露,推荐开启防火墙。
开始安装EMQX
拉取docker镜像
MQTT容器镜像
docker pull emqx:5.1.0
ESPHOME容器镜像
docker pull esphome/esphome:2023.6.3
创建MQTT容器
编写docker运行脚本rundocker_mqtt.sh
#!/bin/bash
set -e
NAME=emqx
DATA_PATH=/docker/${NAME}
docker run -d
--name=${NAME}
--hostname ${NAME}
--restart unless-stopped
--privileged
-p 1883:1883
-p 8083:8083
-p 8084:8084
-p 8883:8883
-p 18083:18083
emqx:5.1.0
给脚本添加可执行权限
chmod 755 rundocker_mqtt.sh
运行rundocker_mqtt.sh脚本,启动emqx容器
./rundocker_mqtt.sh
安装ESP-HOME
编写docker运行脚本rundocker_esphome.sh
#!/bin/bash
set -e
NAME=esphome
DATA_PATH=/docker/${NAME}
docker run -d
--name=${NAME}
--hostname ${NAME}
--restart unless-stopped
--privileged
--net=host
-e TZ=Asia/Shanghai
-v ${DATA_PATH}:/config:rw
esphome/esphome:2023.6.4
给脚本添加可执行权限
chmod 755 rundocker_esphome.sh
运行rundocker_esphome.sh脚本,启动esphome容器
脚本中DATA_PATH对应主机中保存esphome数据的地址,根据实际修改
./rundocker_esphome.sh