docker homeassistant mosquitto 2022-05

1.安装homeassistant

1.1查找镜像

docker search home-assistant

1.2下载镜像

docker pull homeassistant/home-assistants:latest

1.3运行并创建容器

docker run -d --name=“homeassistant” -v /[你本地存放该容器的配置路径]:/config -p 8123:8123 homeassistant/home-assistant

-d:在后台运行容器
–name:容器名
-v:将容器内的目录映射到容器外
-p:端口映射

2.安装hacs

2.1下载hacs包

Releases · hacs/integration (github.com)

2.2配置hacs包

在本地homeassistant目录下新建文件夹:custom_components、www
将hacs包解压到custom_components文件中中
重启homeassistant

2.3登入github

3.将米家设备接入

3.1在hacs中搜索安装xiaomiio

安装后重启

4.安装mosquitto MQTT服务器

4.1拉取镜像

版本:2.0.14
docker pull eclipse-mosquitto:latest

4.2在本地新建目录

sudo mkdir /home/dxy/mosquitto
cd /home/dxy/mosquitto
sudo mkdir config
sudo mkdir data
sudo mkdir log

4.3新建配置文件

vi ./config/mosquitto.conf

粘贴如下内容:
注意:此处路径都是docker容器中的相对路径,不是自己本地的路径

persistence true
persistence_location /mosquitto/data
log_dest file /mosquitto/log/mosquitto.log

log_dest stdout

listener 1883 //不加这一句会在新版本2.x.x中报错:Error: Address not available

4.4修改目录权限

chmod -R 755 /home/dxy/mosquitto
chmod -R 777 /home/dxy/mosquitto/log

4.5创建并启动容器

sudo docker run -it --name=mosquitto --privileged \
-p 1883:1883 -p 9001:9001 \
-v /home/dxy/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf \
-v /home/dxy/mosquitto/data:/mosquitto/data \
-v /home/dxy/mosquitto/log:/mosquitto/log \
-d eclipse-mosquitto

-d:在后台运行容器
–name:容器名
-v:将容器内的目录映射到容器外
-p:端口映射

4.6设置密码

4.6.1

在 /home/dxy/mosquitto/config/mosquitto.conf 中继续添加

# 关闭匿名模式
allow_anonymous false
# 指定密码文件
password_file /mosquitto/config/pwfile.conf
4.6.2进入容器
docker exec -it mosquitto sh
4.6.3创建并修改密码文件权限
touch /mosquitto/config/pwfile.conf
chmod -R 755 /mosquitto/config/pwfile.conf
4.6.4使用 mosquitto_passwd 命令创建用户
mosquitto_passwd -b /mosquitto/config/pwfile.conf username(此处为用户名) password(此处为密码)
4.6.5重启容器
docker restart mosquitto

5.在homeassistant中添加MQTT服务器

docker homeassistant mosquitto 2022-05_第1张图片

你可能感兴趣的:(homeassistant,docker,容器)