Node-RED: 在文件系统上存储数据

本文件是入门指南指南的一部分。您可以在这里查看完整指南:如何开始使用 Node-RED

👋 欢迎来到 Stackhero 文档!

Stackhero 提供即用型 Node-RED 云 解决方案,具有众多优势,包括:

  • 包含 MQTT 服务器(Mosquitto)。
  • 完全访问 Node-RED 管理界面
  • 包含 Node-RED 仪表板
  • 包含无限和专用的 SMTP 电子邮件服务器
  • 只需点击即可轻松更新
  • 使用 HTTPS 保护的可定制域名(例如,https://node-red.your-company.com)。
  • 私有和专用 VM提供的最佳性能和强大安全性

节省时间简化您的生活:只需 5 分钟即可试用 Stackhero 的 Node-RED 云托管 解决方案!

Stackhero for Node-RED 提供本地存储,您的节点可以在其中存储文件。此存储位于 /persistent/storage/ 目录中。

警告 切勿将本地存储的目标设置为 /persistent/storage/ 的子目录以外的其他位置。 如果您使用其他目录,当您应用 Node-RED 更新时,您将丢失数据!

在此示例中,我们将使用 node-red-node-sqlite 节点。此节点需要一个目录来存储其数据。

您需要在 /persistent/storage/ 目录中定义一个文件,例如 /persistent/storage/myDatabase.sqlite

Node-RED 上的 SQLite 配置示例Node-RED 上的 SQLite 配置示例

如果您需要本地存储数据,可以将文件写入 /persistent/storage/ 目录。某些 Node-RED 数据可能已经存在于此目录中。为避免冲突,建议使用子目录,例如 /persistent/storage/myFlowData,来存储您的文件。

要使用 Node.js 创建此目录,请在您的节点中运行以下代码:

fs.mkdirSync('/persistent/storage/myFlowData', { recursive: true });

注意 如果您计划存储多个文件,我们建议使用对象存储服务器。对象存储服务器使通过 API 管理、共享和访问文件变得更容易,例如使用 S3 协议。考虑使用 Stackhero 上可用的 MinIO 服务,它可以在短短 2 分钟内为您提供一个兼容 S3 的对象存储服务器。