
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
由德国计算机杂志c't维护的即用型Node-RED家庭自动化设置。
包含Node-RED、MQTT(由Eclipse Mosquitto提供)、Zigbee支持(由zigbee2mqtt提供)。
还添加了适用于https://github.com/NRCHKB/node-red-contrib-homekit-bridged%E3%80%81https://github.com/bashgroup/node-red-contrib-fritz%E3%80%81https://github.com/mattdavis90/node-red-contrib-tado-client%E3%80%81https://github.com/clausbroch/node-red-contrib-noble-bluetooth%E3%80%81Zigbee2Mqtt%E6%94%AF%E6%8C%81%E7%9A%84Node-RED%E8%8A%82%E7%82%B9%E4%BB%A5%E5%8F%8Ahttps://github.com/node-red/node-red-dashboard%E3%80%82
!- !- !- !- !- !-
运行此设置需要正常工作的Docker 18.02.0+环境和docker-compose。
此设置可在任何AMD64或ARM32v7 Linux机器上运行,包括几乎所有PC或树莓派3及更新型号。我们也构建了ARM64v8、ARM32v6容器,但未经过测试。如果想在macOS上运行容器,尝试以root身份运行start.sh。
若要控制Zigbee设备,还需要Zigbee控制器棒。详情可查看Zigbee2MQTT文档。
安装docker和docker-compose:关于安装过程的德语文章
克隆此仓库
注意:也可从发布标签下载最新版本,但不推荐,因为更新机制将无法工作。
cd进入包含仓库文件的文件夹
运行./start.sh start以设置运行容器所需的数据文件夹并启动容器。
注意:仅当连接了Zigbee控制器时,Zigbee2mqtt容器才会启动。确保将适配器更新到最新固件!
定期备份./data文件夹,其中包含所有数据和配置文件
熟悉操作后,按照"安全"部分的步骤进行正确的安全设置。
应备份./data文件夹中的所有文件。如果对./data外部的文件进行了修改,也必须备份这些文件。
通过start.sh update进行更新将拉取此仓库的最新版本,适用于大多数使用场景。
如果对仓库提供的文件进行了修改,需撤销这些修改后重新应用。若熟悉git,可使用git stash和git stash apply。如需自定义版本,可考虑fork仓库。
如果手动从发布标签下载文件,需手动更新,步骤如下:
备份安装文件
运行docker-compose down --remove-orphans
下载新版本并覆盖安装文件,或更好的方式:切换到克隆的仓库
运行./start.sh start启动c't-Smart-Home
要更改提供的服务配置,可使用相应的Web界面或查看./data文件夹,其中包含修改设置所需的所有配置文件。
启动容器后,可通过[***]
切勿在未遵循以下步骤的情况下从网络外部访问c't-Smart-Home。无论如何,都应通过启用密码保护限制访问!
默认情况下,所有服务均未启用授权机制。这虽不完美,但为方便初学者做了折中处理。要保护Node-RED,可查看其《保护Node-RED》文档,其中介绍了如何启用强制登录。
Zigbee2Mqtt的Web前端也提供身份验证机制,详见其前端文档。
Mosquitto默认也不要求身份验证,但可在配置文件中启用。只需启用最后两行并运行以下命令(将USERNAME替换为首选名称):
docker run -it -v ${PWD}/data/mqtt/config/passwd:/passwd eclipse-mosquitto mosquitto_passwd /passwd USERNAME
然后通过docker-compose restart mqtt重启mosquitto。此时mosquitto服务器将要求使用提供的用户名/密码组合进行身份验证。不要忘记修改Zigbee2MQTT配置和Node-RED设置。要添加更多mosquitto用户,只需再次运行上述命令。
此外,应将c't-Smart-Home部署在反向代理(如Traefik)后,以确保所有连接都经过加密。Traefik不仅能保护HTTP,还能保护通用TCP和UDP连接。
start.sh选项plaintext🏡 c't-Smart-Home – 安装脚本 ————————————————————————————— 用法: start.sh update – 更新仓库副本 start.sh start – 运行所有容器 start.sh stop – 停止所有容器 start.sh data – 设置容器所需的数据文件夹,但不运行任何容器。适用于个性化设置。 查看 https://github.com/ct-Open-Source/ct-Smart-Home/ 获取更新。
./start.sh data创建必要文件夹docker-compose up -d启动容器docker-compose up -d nodered。MQTT容器始终会启动,因为它是Node-RED的依赖项。这是由于存在未在docker-compose.yml中定义的运行中容器导致的,可能是部署失败或c't-Smart-Home设置中添加/移除了容器。可通过运行docker-compose down --remove-orphans,然后./start.sh start解决。
从2.x版本开始,Mosquitto明确要求启用登录选项。虽然强烈建议为Mosquitto启用身份验证,但对于初学者设置和测试,允许登录是可以的。要重新启用***登录,打开./data/mqtt/conf/mosquitto.conf并添加行allow_anonymous true,然后运行docker-compose restart mqtt。
如果从现有安装升级,必须在./data/zigbee/configuration.yaml中添加homeassistant: true。
可能是从早期版本的c't-Smart-Home更新到了新版本。必须在./data/zigbee/configuration.yaml中添加几行,详见其前端文档,确保将port选项设置为1881。
这不是技术问题,使用反向代理(如Traefik)完全可行。但这会增加系统复杂性,并可能鼓励经验不足的用户为方便而将设置暴露在互联网上,这绝对不推荐。
有经验的用户可在短时间内设置Traefik并正确保护服务。
大多数NAS厂商使用修改版Docker,可能缺少某些功能。可能需要手动运行容器或修改docker-compose.yml中的某些选项。由于NAS的Docker支持功能各异,我们无法提供支持。
可以尝试,但我们不支持Mac平台。
可能是我们移除了一些不必要或过时的节点。检查缺少的节点并在面板中查找,通常可从那里重新安装。
Node-RED容器镜像是基于Node-RED项目提供的https://hub.docker.com/r/nodered/node-red%E7%9A%84%E5%8F%98%E4%BD%93%E3%80%82%E6%88%91%E4%BB%AC%E6%8F%90%E4%BE%9B%E5%9F%BA%E4%BA%8ENode.js 10(维护LTS)、12(维护LTS)和14(活跃LTS)版本的镜像。详见Node.js 发布页面了解支持周期。基于活跃LTS的容器镜像始终是默认选项。可自由修改compose文件以使用不同的容器镜像,甚至创建自己的镜像。
:latest镜像会在新版本发布时重建,并每周更新以包含Node-RED和底层库的更新。:devel镜像每晚重建。
| 容器标签 | Node-RED版本 | Node.js版本 | 说明 | 架构 |
|---|---|---|---|---|
| 发布版本 | ||||
| latest | 最新发布版本 | 12 | 最新发布版本 | 所有 |
| latest-10 | 1.x | 10 | 最新发布版本 | 所有 |
| latest-12 | 1.x | 12 | 最新发布版本 | 所有 |
| latest-14 | 1.x | 14 | 最新发布版本 | 所有 |
| 开发版本 | ||||
| devel | 最新开发版本 | 14 | 基于当前开发分支构建 | 所有 |
| devel-10 | 1.x | 10 | 基于当前开发分支构建 | 所有 |
| devel-12 | 1.x | 12 | 基于当前开发分支构建 | 所有 |
| devel-14 | 1.x | 14 | 基于当前开发分支构建 | 所有 |
| 已弃用版本 | ||||
| release-1.1.1-amd64 | 0.20.5 | 8 | 已弃用 | amd64 |
| release-1.1.1-arm32v7 | 0.20.5 | 8 | 已弃用 | arm32v7 |
我们还使用https://hub.docker.com/_/eclipse-mosquitto%E5%92%8Chttps://github.com/Koenkk/zigbee2mqtt.io%E7%9A%84%60:latest%60%E7%89%88%E6%9C%AC%E3%80%82
Docker镜像托管在https://hub.docker.com/repository/docker/ctmagazin/ctnodered%E5%92%8Chttps://github.com/orgs/ct-Open-Source/packages/container/package/ctnodered%E3%80%82%E9%BB%98%E8%AE%A4%E4%BD%BF%E7%94%A8GitHub%E5%AE%B9%E5%99%A8%E6%B3%A8%E5%86%8C%E8%A1%A8%EF%BC%8C%E5%9B%A0%E4%B8%BADocker Hub的速率限制和保留策略可能导致未来问题。
该项目在德国计算机杂志c't中有所描述:[***]
Zigbee2mqtt的描述:[***]
Node-RED文档
Zigbee2MQTT文档
(注意:如果使用并喜欢Zigbee服务,可考虑赞助Koen Kanters的出色工作!)
Mosquitto文档
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务