本帖最后由 ylilike 于 2021-7-18 17:23 编辑
除去portainer自身仅三个容器,是不是很清爽
前提条件还是要的啦,要建好目录,装好docker
视频教程请移步到:树莓派3b+猛击这里
视频教程请移步到:N1盒子 猛击这里
前提条件安装好docker环境,建好hass配置文件存放目录,树莓派不要在root下创建目录和执行命令:
树莓派最好不要在root下创建目录和执行命令
树莓派最好不要在root下创建目录和执行命令
树莓派最好不要在root下创建目录和执行命令
把pi加入docker会省去很多麻烦,命令见文尾。
目录结构:
hass
|----homeassistant
|----nodered
|----mosquitto
|----data
|----log
|----config
|-----mosquitto.conf
说明:
mosquitto.conf这mosquitto mqtt配置文件,内容:
listener 1883
persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log
allow_anonymous true
运行环境建好,就可以用以下三个命令来拉取构建容器了:
1、安装homeassistant(版本可以根据情况修改)
docker run -d --name='homeassistant' \
--net='host' \
--restart=always \
-e TZ="Asia/Shanghai" \
-v '/home/pi/hass/homeassistant':'/config':'rw' \
homeassistant/raspberrypi3-homeassistant:2021.6.6
2、安装nodered (如果只用homeassistant自动化这个可以不用装)
docker run -d --name='nodered' \
--net='bridge' \
--restart always \
-e TZ="Asia/Shanghai" \
-p '1880:1880/tcp' \
-v '/home/pi/hass/nodered':'/data':'rw' \
'nodered/node-red'
3、安装mqtt(如果不用mqtt服务,这个也不用装)
docker run -d --name='mosquitto' \
--net='bridge' \
--restart always \
-e TZ="Asia/Shanghai" \
-p '1883:1883/tcp' \
-v '/home/pi/hass/mosquitto/config':'/mosquitto/config':'rw' \
-v '/home/pi/hass/mosquitto/data':'/mosquitto/data':'rw' \
-v '/home/pi/hass/mosquitto/log':'/mosquitto/log':'rw' \
'eclipse-mosquitto:latest'
mqtt关闭匿名连接设置:
1)、配置文件添加以下配置
allow_anonymous false
password_file /mosquitto/config/pwfile.conf
修改完成为:
listener 1883
persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log
allow_anonymous false
password_file /mosquitto/config/pwfile.conf
2)、进入mqtt容器内部执行
docker exec -it mosquitto sh
3)、生成密码
touch /mosquitto/config/pwfile.conf
chmod -R 755 /mosquitto/config/pwfile.conf
mosquitto_passwd -b /mosquitto/config/pwfile.conf mqtt mqtt
4)、重启mqtt服务
退出容器,在宿主机运行:
(或者用portainer重启mqtt容器)
安装portainer(容器管理工具)
docker run -d --name portainer --restart always -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
、
添加pi到docker用户组
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
我的吃灰树莓派3代又可以愉快地玩耍了
资源占用情况
|