Home assistant: mosquitto mqtt服务器搭建 基于centOS7 docker

拉取mosquitto镜像

docker pull eclipse-mosquitto:latest

在本地创建目录

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

创建配置文件

vi /config/mosquitto.conf
#配置文件中添加下述内容

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

log_dest stdout

listener 1883 

修改目录权限

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

创建并运行容器

docker run -it --name=mosquitto --privileged --restart=unless-stopped \
-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:端口映射

若在创建容器后想修改docker容器的权限,可执行以下命令

docker container update 参数名称 容器名字
#例
docker container update --restart=always mosquitto

开始设置密码

vi /home/mosquitto/config/mosquitto.conf
#在配置文件中添加下述内容

# 关闭匿名模式
allow_anonymous false
# 指定密码文件
password_file /mosquitto/config/pwfile.conf

进入mosquitto容器

docker exec -it mosquitto sh

创建并修改密码文件权限

touch /mosquitto/config/pwfile.conf && chmod -R 755 /mosquitto/config/pwfile.conf

使用mosquitto_passwd命令创建用户

mosquitto_passwd -b /mosquitto/config/pwfile.conf 用户名 密码

重启容器

docker restart mosquitto

在home assistant页面>配置>集成中添加MQTT

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值