1

Node-RED 具有非常好的“单击部署”功能。使用此功能,node-red 可以非常快速地部署其所有节点并流动。

但是,我想知道 - 当我们单击 node-RED 中的“部署”按钮时,我们在 Node-RED 编辑器中开发的流和节点部署在哪里?我之所以问是因为我想在远程设备(例如,Android)上自动部署 Node-RED 生成的代码(我猜它是在 Node.js 中) 。

我知道连接的一种解决方案是——在 Android 设备上运行 MQTT 发布者并在 NodeRED 的 MQTT 订阅者中写入订阅者以获取事件数据。但是,这个解决方案的问题是 - 手动部署(耗时,容易出错)。

正如 Tiago 在此问题的回答部分所建议的那样,Node-RED 根据我们在 Node-RED 编辑器中定义的节点和流生成JSON文件useDir我们可以获取node.js文件,而不是 JSON 文件吗?这将有助于我们在每个设备上部署设备特定代码,而无需在每个设备上加载 Node-RED 编辑器?

4

1 回答 1

2

您可以在这些远程设备上复制您的 userDir 并启动 node-red:

您的流程和设置文件都在那里:

# /opt/node/bin/node-red -help 
Node-RED v0.12.1
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

我的用户目录:

root@arm:~# find /root/.node-red/
/root/.node-red/
/root/.node-red/lib
/root/.node-red/lib/flows
/root/.node-red/settings.js
/root/.node-red/flows_arm.json
/root/.node-red/.config.json
/root/.node-red/.flows_arm.json.backup

顺便说一句,您的流程只是一个 json 文件,看看它我确定您了解它是如何工作的 :)

于 2015-11-21T11:19:29.403 回答