
dustynv/homeassistant-core
容器镜像运行构建
[!NOTE] 感谢@ms1design为Jetson设备移植Home Assistant和Wyoming容器所做的慷慨贡献!
本容器镜像基于Home Assistant Core构建,并进行了少量修改:
HA OS | 容器版 | Core版 | Jetson上的Core版 | Supervised版 | |
|---|---|---|---|---|---|
| 自动化 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 仪表板 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 集成 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 蓝图 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 使用容器 | ✅ | ✅ | ❌ | ✅1 | ✅ |
| 超级管理器 | ✅ | ❌ | ❌ | ❌ | ✅ |
| 插件 | ✅ | ❌ | ❌ | ✅2 | ✅ |
| 备份 | ✅ | ✅ | ✅ | ✅ | ✅ |
| 托管恢复 | ✅ | ❌ | ❌ | ❌ | ✅ |
| 托管系统 | ✅ | ❌ | ❌ | ❌ | ❌ |
docker-compose 示例如果您想使用docker compose在启用cuda的Jetson设备上运行Home Assistant Core 语音助手管道,可在此处找到完整示例docker-compose.yaml。
yamlname: home-assistant-jetson version: "3.9" services: homeassistant: image: dustynv/homeassistant-core:latest-r36.2.0 restart: unless-stopped init: false privileged: true network_mode: host container_name: homeassistant hostname: homeassistant ports: - "8123:8123" volumes: - ha-config:/config - /etc/localtime:/etc/localtime:ro - /etc/timezone:/etc/timezone:ro volumes: ha-config:
用户界面可通过 [***] 访问(请替换为系统的hostname或IP)。按照向导设置Home Assistant,您也可以参考官方指南。
建议参考官方Home Assistant文档或Jetson研究组在NVIDIA论坛的讨论帖获取帮助。
您可以通过挂载Docker卷来指定Home Assistant Core配置的存储位置。确保保留:/config部分:
sh-v /您的配置路径:/config
Home Assistant可以发现并自动配置网络中的zeroconf/mDNS和UPnP设备及插件。要实现此功能,容器必须使用--net=host创建:
使用docker cli时:
sh--net=host
使用docker-compose.yaml时:
yamlnetwork_mode: host
简而言之: 已禁用,请手动添加...
由于运行Home Assistant Supervisor的需求,同一主机/网络上运行的插件的原生自动发现已被禁用。Supervisor有较深的Debian系统依赖,在此项目中移植过于复杂。
大多数Home Assistant插件基于
bashio构建,因此部分系统覆盖命令已被适配,以在没有Supervisor的情况下运行。
wyoming插件要将本仓库中支持wyoming的插件手动添加到运行中的Home Assistant Core实例,请按照以下步骤操作:
homeassistant.local:8123)。设置 > 设备与服务。添加集成按钮。Wyoming协议。wyoming插件的主机IP地址(如果与Home Assistant运行在同一主机上,使用localhost)。wyoming插件的端口(默认是***)。要让Home Assistant访问主机的蓝牙设备,Home Assistant Core容器需要使用主机上的BlueZ - 为容器添加NET_ADMIN和NET_RAW权限,并将dbus映射为卷,如下例所示以启用蓝牙支持:
使用docker cli时:
sh--cap-add=NET_ADMIN \ --cap-add=NET_RAW \ -v /var/run/dbus:/var/run/dbus:ro
使用docker-compose.yaml时:
yamlcap_add: - NET_ADMIN - NET_RAW volumes: - /var/run/dbus:/var/run/dbus:ro
有问题?您可以通过以下渠道获取帮助:
/r/homeassistantjetson-containers漏洞,请在GitHub提交issue[!NOTE] 本项目由Jetson AI Lab研究组创建。
homeassistant-core:latest | |
|---|---|
| 别名 | homeassistant-core |
| 要求 | L4T ['>=34.1.0'] |
| 依赖项 | build-essential homeassistant-base ffmpeg python:3.12 |
| Dockerfile | Dockerfile |
| 镜像 | dustynv/homeassistant-core:latest-r36.2.0 (2024-04-26, 1.4GB) |
| 说明 | 构建的homeassistant-core wheel文件保存在/usr/src/homeassistant |
homeassistant-core:2024.4.2 | |
|---|---|
| 要求 | L4T ['>=34.1.0'] |
| 依赖项 | build-essential homeassistant-base ffmpeg python:3.12 |
| Dockerfile | Dockerfile |
| 镜像 | dustynv/homeassistant-core:2024.4.2-r35.4.1 (2024-04-09, 6.0GB)dustynv/homeassistant-core:2024.4.2-r36.2.0 (2024-04-09, 1.4GB) |
| 说明 | 构建的homeassistant-core wheel文件保存在/usr/src/homeassistant |
| 仓库/标签 | 日期 | 架构 | 大小 |
|---|---|---|---|
dustynv/homeassistant-core:2024.4.2-r35.4.1 | 2024-04-09 | arm64 | 6.0GB |
dustynv/homeassistant-core:2024.4.2-r36.2.0 | 2024-04-09 | arm64 | 1.4GB |
dustynv/homeassistant-core:latest-r36.2.0 | 2024-04-26 | arm64 | 1.4GB |
dustynv/homeassistant-core:r35.4.1 | 2024-04-10 | arm64 | 6.0GB |
dustynv/homeassistant-core:r36.2.0 | 2024-04-10 | arm64 | 1.4GB |
容器镜像兼容其他次要版本的JetPack/L4T:
• L4T R32.7容器可在其他L4T R32.7版本(JetPack 4.6+)上运行
• L4T R35.x容器可在其他L4T R35.x版本(JetPack 5.1+)上运行
要启动容器,您可以使用jetson-containers run和autotag,或手动编写docker run命令:
bash# 自动拉取或构建兼容的容器镜像 jetson-containers run $(autotag homeassistant-core) # 或显式指定上述镜像之一 jetson-containers run dustynv/homeassistant-core:latest-r36.2.0 # 或使用'docker run'(指定镜像和挂载等) sudo docker run --runtime nvidia -it --rm --network=host dustynv/homeassistant-core:latest-r36.2.0
jetson-containers run会将参数转发给docker run,并添加一些默认值(如--runtime nvidia、挂载/data缓存、检测设备)
autotag会找到与您的JetPack/L4T版本兼容的容器镜像——本地镜像、从仓库拉取的镜像或构建的镜像。
要将主机目录挂载到容器中,使用-v或--volume标志:
bashjetson-containers run -v /主机路径:/容器路径 $(autotag homeassistant-core)
要启动容器运行命令而非交互式shell:
bashjetson-containers run $(autotag homeassistant-core) my_app --abc xyz
您可以传递任何docker run支持的选项,它会在执行前打印完整命令。
如果如上文所示使用autotag,在需要时会提示您构建容器。要手动构建,请先完成系统设置,然后运行:
bashjetson-containers build homeassistant-core
上述依赖项将被构建到容器中,并在构建过程中进行测试。使用--help查看构建选项。





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务