You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派Hassio环境下Node-RED无法安装模块问题求助

解决Hassio环境下Node-RED无法安装模块的问题

我之前在树莓派的Hassio环境里折腾Node-RED时,也碰到过一模一样的模块安装失败问题,结合你的报错信息(核心是ENOTFOUND,连不上npm官方源),给你几个亲测有效的解决思路:

1. 先排查网络连通性

  • 第一步先确认树莓派本身能访问外网:打开Hassio的终端,执行ping registry.npmjs.org,看看能不能收到响应。如果ping不通,那就是树莓派的网络出了问题——检查下DNS设置是不是正确(比如改成8.8.8.8),或者路由器有没有拦截对npm源的访问。
  • 如果树莓派能ping通,但Node-RED里还是报错,大概率是Node-RED容器的网络异常,直接在Hassio的插件管理里找到Node-RED,点击重启试试,很多时候重启就能解决容器网络的小问题。

2. 回退到稳定的Node-RED版本

你提到可能是Node-RED自动更新导致的问题,这点很关键——Hassio的Node-RED插件更新后,有时候会带上来比较老的npm/node版本(你报错里显示用的是npm@5.6.0和node@v10.0.0,这俩版本确实有点过时,兼容性容易出问题)。

  • 可以回退到之前能用的旧版本:在Hassio插件市场找到Node-RED,点击版本选项,选择一个你之前正常使用的旧版本重新安装,安装完成后再试试装模块。

3. 切换到国内npm镜像源

有时候不是网络不通,而是官方npm源访问太慢或者不稳定,换成国内的镜像源就能解决:

  • 找到Node-RED的settings.js配置文件(在Hassio的Node-RED数据目录里),找到npm相关的配置段,改成下面这样:
    npm: {
        registry: "https://registry.npmmirror.com/"
    }
    
  • 保存配置后重启Node-RED,再尝试安装模块。

4. 清理npm缓存

旧的缓存文件也可能导致安装失败,你可以进入Node-RED的容器清理缓存:

  1. 在Hassio终端执行docker ps找到Node-RED的容器名称;
  2. 执行docker exec -it <你的Node-RED容器名> /bin/bash进入容器;
  3. 执行npm cache clean --force清理缓存;
  4. 输入exit退出容器,然后重启Node-RED再试。

附你提供的完整错误片段:
npm info it worked if it ends with ok
npm info using npm@5.6.0
npm info using node@v10.0.0
npm ERR! code ENOTFOUND
npm ERR! errno ENOTFOUND
npm ERR! network request to https://registry.npmjs.org/node-red-contrib-telegrambot-home failed...

内容的提问来源于stack exchange,提问作者blackhelmet34

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:36:51