我们可以从 Docker Hub 网站来搜索镜像,Docker Hub 网址为: https://hub.docker.com/
找到自己想要的镜像后可以如图直接复制命令进行镜像拉取,很方便。
我们也可以使用 docker search 命令来搜索镜像。查找Zigbee2mqtt 我们可以输入docker search zigbee2mqtt
命令搜索 zigbee2mqtt 来寻找适合我们的镜像。其中STARS数量多的代表热度比较高,并且AUTOMATED一栏的 [OK] 代表可以自动化安装。则我们现在拉取第一个镜像。
运行Docker的镜像拉取命令:
docker pull koenkk/zigbee2mqtt:latest-dev
输入命令后稍等一会,等待下载完成(期间有可能失败,会自动重新接着下载):
下载完成后:
查看镜像命令:docker images
下载完成后就可以看到刚刚下载的镜像,如图是2个zigbee2mqtt的镜像,刚刚下载的是dev分支的镜像,dev分支可直接使用tcp连接,所以使用这个镜像,现在把另一个镜像删除掉(不删除也不影响)。
删除镜像的命令:docker rmi 721a9b79a1a6
(具体ID号根据查看镜像结果填)
如果删除失败,看提示内容,大多数初学者是因为镜像创建的容器还在。
可以先查看所有的容器 --> 删除对应容器 --> 最后再使用上一步的命令把镜像删除。
相关命令如下:
docker ps -a #查看所有的容器
docker rm -f <容器 ID> #删除一个容器
#其他相关命令
docker start <容器 ID> #启动一个已停止的容器
docker stop <容器 ID> #停止一个容器
docker restart <容器 ID> #对停止的容器进行重启
#更多命令自行百度
打开
/app/data/configuration.yaml
实际路径为
/opt/zigbee2mqtt/data/configuration.yaml
添加
homeassistant: true # HASS MQTT集成,MQTT discovery功能必需
permit_join: true # 默认允许添加zigbee设备,添加完成后改为false
mqtt:
base_topic: zigbee2mqtt
server: 'mqtt://192.168.101.254' # MQTT broker所在设备IP
user: admin # MQTT broker用户名
password: password # MQTT broker密码
serial:
port: 'tcp://192.168.XXX.YYY:8880' # zigbee2mqtt网关IP,端口默认8880
advanced:
channel: 20 # zigbee信道,不设置默认11
创建容器参数:
docker run --name="zigbee2mqtt" -it -e "TZ=Asia/Shanghai" -v /opt/zigbee2mqtt/data:/app/data --net=host koenkk/zigbee2mqtt:latest-dev