如果Node-RED是以全局npm软件包方式进行安装的,那么就直接执行命令node-red
:
$ node-red
Welcome to Node-RED
===================
25 Feb 22:51:09 - [info] Node-RED version: v0.14.6
25 Feb 22:51:09 - [info] Node.js version: v4.6.0
25 Feb 22:51:09 - [info] Loading palette nodes
25 Feb 22:51:10 - [warn] ------------------------------------------
25 Feb 22:51:10 - [warn] [rpi-gpio] Info : Ignoring Raspberry Pi specific node
25 Feb 22:51:10 - [warn] ------------------------------------------
25 Feb 22:51:10 - [info] Settings file : /home/nol/.node-red/settings.js
25 Feb 22:51:10 - [info] User Directory : /home/nol/.node-red
25 Feb 22:51:10 - [info] Server now running at http://127.0.0.1:1880/
25 Feb 22:51:10 - [info] Creating new flows file : flows_noltop.json
25 Feb 22:51:10 - [info] Starting flows
25 Feb 22:51:10 - [info] Started flows
这样,你就可以在http://localhost:1880上看到Node-RED编辑器了。
对于某些特殊的硬件平台,我们还提供了一些专门的说明:
现在,你可以来建立你的第一个流程了。
即便Node-RED不是以全局方式安装的,依然想通过node-red
指令执行。
如果安装方式为npm,那么启动脚本就是,你执行npm install
命令时所在文件夹下的node_modules/node-red/bin/node-red
。如果安装方式为zip文件,那么脚本就是解压文件夹中的node-red-X.Y.Z/bin/node-red
。
首先,要让node-red
脚本成为可执行文件:
chmod +x <node-red-install-directory>/bin/node-red
然后,你可以利用一下方式启动Node-RED:
<node-red-install-directory>/bin/node-red
对于Windows,要在执行npm install
命令或解压zip文件的目录中,执行:
node node_modules/node-red/red.js
Usage: node-red [-v] [-?] [--settings settings.js] [--userDir DIR] [flows.json]
Options:
-s, --settings FILE use specified settings file
-u, --userDir DIR use specified user directory
-v enable verbose output
-?, --help show usage
By default, Node-RED stores your data in the directory默认情况下,Node-RED将用户数据保存在$HOME/.node-red
目录中。出于向后兼容的原因,如果Node-RED在安装目录中检测到了用户数据,也将会替代使用。在升级文档中,专门有一个部分是关于如何将数据从Node-RED安装目录中移植出来的。
如果想替代默认使用的目录,可以通过添加命令行参数--userDir
实现。
在某些场合,我们需要向底层的Node.js进程传递参数。比如当它运行在像树莓派或者BeagleBone Black这类内存受限这样的设备上时,
为了做到这点,你必须以node-red-pi
方式启动node-red
中的脚本。
注意:这个脚本无法在Windows上使用。
另外,也可以通过node
指令来运行Node-RED,但是在指定red.js
之前,必须手动设定Node进程以及传递给Node-RED本身的相关参数。
以下给出了这两种方式的命令形式:
node-red-pi --max-old-space-size=128 --userDir /home/user/node-red-data/
node --max-old-space-size=128 red.js --userDir /home/user/node-red-data/
开机时启动、停止和监控应用的方法有很多,对于树莓派用户,强烈建议按照这些说明进行操作。
后面的内容对于大多数用户都可以直接利用,但对于Windows用户,可能无法将PM2作为服务自动运行,可能更适合采用之后的NSSM选项。
PM2是Node.js的进程管理工具,利用它可以非常容易地实现开机应用自动启动以及必要时自动启动的功能。
sudo npm install -g pm2
tail.exe
已经在目录中安装好,具体情况请参照此处的说明。
node-red
命令的具体位置。如果是以全局方式安装的Node-RED,那么对于Linux或OS X系统,那么node-red
命令就有可能在/usr/bin/node-red
或/usr/local/bin/node-red
中,我们可以利用which node-red
来确定其确切的位置。
如果是本地安装,那么它就应该是你运行npm install
命令的那个目录中的node_modules/node-red/bin/node-red
。
以下命令可使PM2运行Node_RED,其中假设/usr/bin/node-red
为node-red
命令的存放地址。
另外,--
必须出现在传递给node-red的其他任何参数之前。
pm2 start /usr/bin/node-red -- -v
pm2 start /usr/bin/node-red --node-args="--max-old-space-size=128" -- -v
执行上述指令后,Node-RED将会以后台方式启动运行。你还可以利用下面的指令来查看相关进程信息并访问运行日志:
pm2 info node-red
pm2 logs node-red
关于利用PM2管理进行的更多信息请访问这里。
PM2能够自动生成和配置一个与运行平台相适应的启动脚本。
执行以下命令,并按照出现的提示进行操作:
pm2 save
pm2 startup
对于更新版的Linux系统,还可以使用systemd
pm2 startup systemd
export PM2_HOME="/root/.pm2"替换为正确的目录,比如:
export PM2_HOME="/home/{youruser}/.pm2"
最后,重启系统,并检查所有应用是否按预期方式自动启动。
以下为社区成员所提供的替代方案。