在树莓派上运行

先决条件

如果您正在使用 Raspberry Pi OS,当前支持的版本是 Bullseye。

安装和升级 Node-RED

我们提供了一个脚本,用于在树莓派上安装 Node.js、npm 和 Node-RED。当有新版本发布时,该脚本也可用于升级现有安装。

运行以下命令将下载并执行该脚本。如果您想先查看脚本内容,可以在 Github 上查看。

bash <(curl -sL https://github.com/node-red/linux-installers/releases/latest/download/update-nodejs-and-nodered-deb)

您可以向脚本传递额外的参数。在上述命令末尾添加 --help 即可查看这些参数。

此脚本适用于任何基于 Debian 的操作系统,包括 UbuntuDiet-Pi。您可能需要先运行 sudo apt install build-essential git curl,以确保 npm 能够获取和构建其需要安装的任何二进制模块。

该脚本将:

  • 如果存在旧版本的 Node-RED,则将其移除。
  • 如果检测到已安装 Node.js,它将确保其版本至少为 v18。如果未发现任何版本,它将使用 NodeSource 软件包安装 Node.js 20 LTS 版本。
  • 使用 npm 安装最新版本的 Node-RED。
  • 可选地安装一组有用的 Pi 专用节点。
  • 将 Node-RED 设置为服务运行,并提供一组用于操作该服务的命令。

本地运行

在本地运行 Node-RED 一样,您可以使用 node-red 命令在终端中运行 Node-RED。然后可以通过按 Ctrl-C 或关闭终端窗口来停止它。

由于树莓派的内存有限,您需要使用一个额外的参数来启动 Node-RED,以告知底层的 Node.js 进程比正常情况更早地释放未使用的内存。

为此,您应该使用备用的 node-red-pi 命令,并传入 max-old-space-size 参数。

node-red-pi --max-old-space-size=256

作为服务运行

针对 Pi 的安装脚本还会将其设置为作为服务运行。这意味着它可以在后台运行,并可以设置为开机自动启动。

提供了以下命令来操作该服务:

  • node-red-start - 启动 Node-RED 服务并显示其日志输出。按 Ctrl-C 或关闭窗口不会停止服务;它会继续在后台运行。
  • node-red-stop - 停止 Node-RED 服务。
  • node-red-restart - 停止并重新启动 Node-RED 服务。
  • node-red-log - 显示服务的日志输出。

您也可以通过选择 菜单 -> 编程 -> Node-RED 菜单选项,在 Raspberry Pi OS 桌面上启动 Node-RED 服务。

开机自启动

如果您希望 Node-RED 在树莓派开机或重启时运行,可以通过运行以下命令来使能服务的自启动功能:

sudo systemctl enable nodered.service

要禁用该服务,请运行以下命令:

sudo systemctl disable nodered.service

打开编辑器

一旦 Node-RED 运行起来,您就可以在浏览器中访问编辑器。

如果您正在使用 Pi 桌面上的浏览器,可以打开地址:https://:1880

我们建议在 Pi 之外的计算机上使用浏览器,并将其指向在 Pi 上运行的 Node-RED。不过,您也可以使用内置浏览器,如果是这样,我们推荐使用 Chromium 或 Firefox-ESR,而不是 Epiphany。

.

从另一台机器浏览时,您应使用 Pi 的主机名或 IP 地址:http://<hostname>:1880。您可以通过在 Pi 上运行 hostname -I 来查找 IP 地址。

后续步骤