本文准备介绍用群晖NAS Docker方式安装HomeAssistant+HomeBridge对接Homekit实现智能家居平台的升级方法,很多小伙伴实现想体验homekit的功能群晖NAS是一个便捷的选择。homeassistant之所以是最优秀的智能家居平台的原因之一就是版本更新速度快,就像当年的小米MIUI一样。所以今天我们就来介绍一下采用群晖NASDocker方式安装HomeAssistant+HomeBridge对接Homekit实现智能家居平台的升级方法【保姆篇】
作为一个现代化懒人,能张嘴控制绝不动手,什么开关灯,设定空调之类,的喊一声多好。大冬天的,谁愿意从温暖的被窝里面出来关灯,谁愿意从黑漆漆的地方摸进去开灯。要回家吃鸡了,书房还是冰冷的,远程打开预热多好啊。Intel CPU的群晖NAS可以在DSM上跑docker,用docker来跑homeassistant-homebridge就可以省去一个树莓派了
今天我们采用的设备主角是:群晖的DS1517+
Docker方式安装HomeAssistant
首先我们进入群晖界面
进入套件中心,搜索docker,点击安装
安装完成后,点击注册表 搜索下载homeassistant最新的docker镜像文件,点击下载后弹出确认选项,选择当前稳定版本0.62.1标签,然后点击选择
在映像种可以看到homeassistant的docker文件进程,总计2G大小,然后就开始下载最新的镜像文件了,此时映像标签会出现一个白色圆圈1,表示一个镜像文件正在下载。
镜像文件下载完成后群晖NAS系统会有通知,安装成功后,点击启动按钮,进入常规设置页面,点击高级设置
高级配置需要配置,四个部分第一个部分home assistant的自启动服务
第二个部分是指定装载路径了,安装文件夹,点击添加文件,新建2个文件夹homeassistant和homebridge【后面homebridge安装将可以使用】
选择文件夹,选中homeassistant ,配置状态路径 /config
进入第三部配置网络,选择与选择使用和 Docker 宿主相同的网络
进入第四部配置环境,需要新增两个环境变量点击加号,添加 variable = TZ
和 value = Asia/Shanghai
确认,下一步,应用
在总览中将会发现homeassistant的启动状态
访问群晖的ip+端口接口访问homeassisstant,地址为:http://xxx.xxx.x.xxx:8123/
Docker方式安装Homebridge
任务完成50%,革命尚未成功仍需继续,假如家里网速够快的话以上3分钟就搞定了
为了对接homekit,我们需要搭建homebridge 和 homebridge-homeassistant的插件
再次之前我们需要先准备三个文件安装文件 install.sh 和 package.json,config.json ,后续需要将他们拖至docker/homebridge/ 的文件夹中
下面是san个设置文件的示例:
package.json
1 2 3 4 5 6 7 8 9 10 11 12 |
{ "name": "DiskStationHomeBridge", "description": "HomeKit support for the impatient.", "version": "0.1.1", "license": "ISC", "dependencies": { "homebridge-harmonyhub": "0.2.0-alpha", "homebridge-netatmo": "^0.0.4", "homebridge-nukiio": "^0.0.3", "homebridge-synology": "^0.1.0" } } |
install.sh
1 2 3 4 5 6 |
#!/bin/bash npm install -gs homebridge-harmonyhub npm install -gs homebridge-netatmo npm install -gs homebridge-nukiio npm install -gs homebridge-synology |
config.json
文件,作用连接Homeassistant-homeBridge,username请输入群晖 docker 0 的 HWaddr 地址 ,注意需要大写英文 ,如果你不知道如何获取docker 0 的 HWaddr 地址 请见本文最后说明
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
{ "bridge": { "name": "Homebridge", "username": "XX:XX:XX:XX:XX:XX", "port": 51826, "pin": "123-45-678" }, "platforms": [{ "platform": "HomeAssistant", "name": "HomeAssistant", "host": "http://127.0.0.1:8123", "password": "", "supported_types": ["binary_sensor", "climate", "cover", "fan", "garage_door", "device_tracker", "input_boolean", "light", "lock", "media_player", "rollershutter", "sensor", "scene", "switch"], "default_visibility": "visible", "verify_ssl": false }] } |
好的 准备好文件我们开始启动homebridge以及homebridge-homeassistant 配置方法
首先在注册表搜索homgbridge 出现N多镜像,用脚投票我们选择了marciraddatz/homebridge
配置一共分为三步
第一步,在映像点击启动,进入常规配置,点击高级配置,勾选启动自动重新启动
第二步卷 点击添加文件夹选择 docker/homebridge
装载路径 /root/.homebridge ⚠注意 重要的homebridge 前面有一个 “.”
第三步 设置网络,使用与dockerHost相同的网络
点击下一步,确认即可
然后使用File Station 将前面三个文件拖拽到homebirdge 目录下,install.sh
、package.json
、config.json
homebridge 基本已经配置完成
Docker方式配置homebridge-homeassistant
点击容器 选择homebridge 点击上方详情
进入homebridge 总览页面 选择上方终端机
点击新增旁边向下小三角 输入sh
点击进入sh 格式内容列,此处不能复制 输入 npm install -g homebridge-homeassistant
使用NPM 安装 homebridge-homeassistant
完成发现 homebridge的日志有和homeassistant的通讯说明成功
这样我们的 homeassistant 和 homebridge就已经安装完成
日常配置更新如何操作,如何排除疑难杂症,对接HomeKit
下面我们来说说 homekit的连接,通常我们选择将设备配置在 homeassistant 当然也可直接配置在homebridge上
配置完成,重启ha、hb 观察终端机 是否有日志报错
开homebridge 终端机 使用homekit 扫码终端机产生的二维码即可,或者扫描日志中的一维码完成与homekit 的通讯握手🤝
平时可以在容器下面控制ha 和 hb 的开关,这是群晖的优势,可以根据不同的硬件设备接入不同版本的ha 和 hb, 这就是Docker 的力量
我们先开启ha,确保ha正常访问
我们在启动hb ,同样是使用终端机来监控配置文件是否报错
看到HA 和 HB正常通讯确保homekit 可以通过homebridge拉去到homeassistant 上面的设备
这是拿出你的iphone 或者ipad 打开家庭app 进行添加设备即可完成全套配置,从此获取配置在ha上面的硬件信息
ps:配置homebirdge 的时候会发现 找不到 mac地址如何找到?
我做一下补充说明
当你没安装完成HB的时候建议在HA 的终端机进行操作,点击新增旁边倒立小三角->通过命令启动->弹出提示框输入sh
点击侧面新增sh 分栏,在终端机区域输入:ifconfig 获取网络配置位置信息,第一docker 0 就是你虚拟环境docker虚拟分配的Mac地址 = HWaddr 输入给homebirdge的 username 即可完成配置与通讯
有疑问🤔可以直接在文章进行评论 预计本周会出实战操作篇,有需求的朋友可以关注!
本站文章如需转载,请注明文章出处:https://www.hachina.io/4613.html
本站保留文章版权以及相关权益。
好像群晖里面不能直接编辑HA等配置文件,推荐像我一样的萌新可以用winscp(图形化管理)代替putty。
后续会出操作篇 尽情期待!
你好 我按照你的方法操作的 为什么会有这个提示呢? 而且homebridge容器不停的重启,请帮帮我
在 install.sh 文件增加一行 npm install -gs homebridge-homeassistant
你的XX:XX:XX:XX:XX:XX的换掉 切不能为小写 必须为大写
┌────────────┐
│ 123–45–888 │
└────────────┘
[2018-3-6 15:14:56] Homebridge is running on port 51826. ——————————–
[2018–3–6 15:16:20] [HomeAssistant] Received event: ping
HOMEKIT 就是添加不了配件
我的也是,设置好容器了。没看出错误。也是没法添加配件啊。在苹果手机端。
有没有找到解决办法,我的也是,设备可以读取,ha中也可以控制,hb中也出现pin码,但是添加的时候找不到设备,在线等解决办法
遇到同样的问题一切正常HB 启动没有报错,HA可以正常访问,但是就是水果手机连接不上HB。
你们可以试试这一个HB源(http://koolshare.cn/thread-130452-1-1.html),这个源我也没有测试成功 一样的问题
我的也是呢,按照步骤设置,没看出错误。没法添加配件。
我也折腾了很久,最后搞定了,他的GitHub里面写的很清楚了,我转过来:
5. Set a hostname (Synology only)
To avoid conflicts with other devices, set the DS_HOSTNAME variable in the .env file to your DiskStation’s server name (uncomment it first!). The value should exactly match the server name as shown under Synology DSM Control Panel -> Info Centre -> Server name. It should contain no spaces or special characters.
就是增加DS_HOSTNAME变量,变量名是你的群晖服务器的名字,在控制面板->信息中心里面可以找到。
问题解决了吗
求助:群晖 docker 安装运行 hass.io
TypeError: Cannot read property ‘sensor_names’ of null
一直卡在这里
大神还没做实战篇吗?
大神您好,根据您的方法,我已经成功使用群晖搭建好平台,并让手机连接上桥接器,现在有一个问题就是有一个TP-link的摄像头,支持ONVIF协议,已经成功连接到home assistant,可以正常预览实时画面,请问如何添加进homekit里?感谢!
这个摄像头在home assistant里的的信息:
设备/实体
camera.onvif_camera
State
idle
State attributes (JSON, optional)
{
“access_token”: “c0328ef2230d6d226f2399e775c63fece427442583a65c9f85d6e1c4f6f0ecc0”,
“friendly_name”: “ONVIF Camera”,
“entity_picture”: “/api/camera_proxy/camera.onvif_camera?token=c0328ef2230d6d226f2399e775c63fece427442583a65c9f85d6e1c4f6f0ecc0”
}
问题:“第一docker 0 就是你虚拟环境docker虚拟分配的Mac地址 = HWaddr” ,而我看到的是这个
============下面是我看到输入指令后看到的结果,没有HWADDR,是哪里出了错
# ifconfig
docker0: flags=4163 mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 0.0.0.0
inet6 fe80::42:e8ff:fe72:3430 prefixlen 64 scopeid 0x20
ether 02:42:e8:72:34:30 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4402 bytes 550582 (537.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
==========
也没有看到 “HWaddr” ,在此特向你请教。谢谢
就是这个02:42:e8:72:34:30
然后一直报错的问题,这个里面的英文都要改成大写….然后就能认了….
和你一样的问题,一直没找到问题所在,也是突然意识到了什么,然后试了下的,没想到还真是….
你找到解决的办法了吗?我也是卡在这里
同问,并没有在docker 0 处好到HWaddr
没有发现 HWaddr在哪里
安装成功后只能获取状态,然后怎么开关没反应
能留个联系方式吗,有些问题还是没弄明白 微信:16605305681
homebridge提示failed getting devices:Error:You are not authenticated,Retrying…是什么问题呀?应该如何解决?
我也是这个问题
新版本的ha更新了授权机制 参考https://www.hachina.io/dwqa-question/9099.html
在homeassitant的配置文件configuration.yaml 中添加以下语句 意思是信任本地网络联机 不需要密码了。怎么配置密码我没研究出来 不明白 这个教程有很大的误导性,很多都是基本默认配置 两个文件就是照搬作者说明里的例子。没有给出任何说明受不了,现在homeassitant更新后有认证的 也没更新,看这个教程会浪费巨多的时间 移步吧
homeassistant:
auth_providers:
– type: trusted_networks
trusted_networks:
– 127.0.0.0/24
– fd00::/8
按楼主安装好以后,出现错误,一直反复重启
同上。。。这个教程有问题吧
每一步都照做了,然而Homebridge无限重启
那是因为你先把那三个文件放进了HomeBridge文件夹!删除容器里的HomeBridge,删除HomeBridge文件夹里的所有文件,重启动HomeBridge映像,按教程说明的顺序放入那三个文件就不会无限重启。我现在遇到了另一个问题, HomeBridge无法与HomeAssistant通讯,HomeBridge提示未授权。
文中“添加 variable = TZ 和 value = Asia/Shanghai”这一步不对吧。
官方的意思是,变量TZ的值是Asia/Shanghai,而不是说添加一个(变量)variable 再添加一个(值) value
对于(Linux)docker而言,TZ是系统指定时区的timezone
应当是 “添加一个环境变量 TZ=Asia/Shanghai” 吧
再次之前我们需要先准备三个文件安装文件 install.sh 和 package.json,config.json ,后续需要将他们拖至docker/homebridge/ 的文件夹中
这三个文件怎么来啊? 我新手凭空给你变3个文件出来吗?