20190804:抱歉,有些错误,可能用的人太少了,也没人说,更新一下进入容器的方法(帖子中也改过来了),以前写的不对,笔记没做好。
docker exec -it homebridge /bin/sh
虽然HA的HK本身已经支持接入大部分的设备了,不过迟迟不见添加对camera设备的支持,看到有人问,还是发个帖子分享一下,Docker环境安装Hassio的可以试一试单独装一个homebridge容器实现这个需求,看论坛帖子(狂犬?)貌似现在都已经支持接入音频实现对讲了,期待大佬分享,此贴针对小白用户,算是挖坟分享,不过我倒是一直再用。
oznu/homebridge
本身不带ffmpeg,需要手动安装,群晖环境有个自带的ffmpeg的,论坛搜搜就有了(“群晖 docker homebridge”)
docker pull oznu/homebridge
本身也支持N1 armbian,应该是需要加tag:名字改成 oznu/homebridge:arm64v8
- 运行镜像(同时安装ffmpeg和homebridge ui x):
docker run -d -it \
--net=host \
--name=homebridge \
--restart=always \
-e TZ=Asia/Shanghai \
-e PUID=915 -e PGID=915 \
-e PACKAGES=ffmpeg \
-e HOMEBRIDGE_CONFIG_UI=1 \
-e HOMEBRIDGE_CONFIG_UI_PORT=8288 \
-v /var/lib/docker/data/homebridge:/homebridge \
oznu/homebridge
提示:N1需要把名字改成 oznu/homebridge:arm64v8
解释一下:
PUID=915 -e PGID=915 :新建组名为915,用户名为915的用户(群组),随意定义;
-e PACKAGES=ffmpeg :安装ffmpeg组件;
-e HOMEBRIDGE_CONFIG_UI_PORT=8288 : 安装HOMEBRIDGE_CONFIG_UI,就是一个WEB端的管理界面,8288请选择一个没有被占用的端口号,安装完毕了可以通过你的宿主的 IP+8288访问WEB管理界面;
-v /var/lib/docker/data/homebridge :“/var/lib/docker/data/homebridge”为本地自定义路径,根据自己情况修改;配置文件均在这个文件夹下面。
docker exec -it homebridge /bin/sh
- 安装homebridge-camera-ffmpeg:
npm install -g homebridge-camera-ffmpeg
然后自己按照需求,编辑一下config.json文件(位于上面的/var/lib/docker/data/homebridge下面),给个示例:
{
"bridge": {
"name": "Homebridge",
"username": "DC:23:3D:E4:CE:30",
"port": 51215,
"pin": "123-45-678"
},
"description": "This is an example configuration file. You can use this as a template for creating your own configuration file containing devices you actually own.",
"accessories": [],
"platforms": [
{
"platform": "Camera-ffmpeg",
"cameras": [
{
"name": "door",
"videoConfig": {
"source": "-re -i rtsp://10.16.100.151:554/ch0_0.h264",
"maxStreams": 2,
"maxWidth": 1280,
"maxHeight": 720,
"maxFPS": 60
}
}
]
},
{
"platform": "Camera-ffmpeg",
"cameras": [
{
"name": "Livingroom",
"videoConfig": {
"source": "-re -i rtsp://admin:[email protected]:554/h264/ch1/sub/av_stream",
"maxStreams": 2,
"maxWidth": 1920,
"maxHeight": 1080,
"maxFPS": 60
}
}
]
},
{
"platform": "Camera-ffmpeg",
"videoProcessor": "/usr/bin/ffmpeg",
"cameras": [
{
"name": "Bedroom",
"videoConfig": {
"source": "-re -i rtsp://admin:[email protected]:554/h264/ch1/sub/av_stream",
"maxStreams": 2,
"maxWidth": 1920,
"maxHeight": 1080,
"maxFPS": 60
}
}
]
},
{
"platform": "Camera-ffmpeg",
"videoProcessor": "/usr/bin/ffmpeg",
"cameras": [
{
"name": "Foyer",
"videoConfig": {
"source": "-re -i rtsp://admin:[email protected]:554/h264/ch1/main/av_stream",
"maxStreams": 2,
"maxWidth": 1920,
"maxHeight": 1080,
"maxFPS": 60
}
}
]
}
]
}
我用的远古垃圾小蚁和萤石,source的取流地址需要根据自己的摄像机确定。
更改npm安装源方法(来自IOB论坛):
进入HB的容器:
docker exec -it homebridge /bin/sh
输入:
npm config set registry https://registry.npm.taobao.org
以上命令可以将npm源改为淘宝源(谢谢花大老妖大佬分享),测试一下:
npm config get registry
升级npm方法:
npm install npm -g
enjoy!
对讲机快来。