Node-RED: ファイルシステムにデータを保存する

このドキュメントはクイックスタートガイドの一部です。完全なガイドはこちらからご覧いただけます:Node-REDの始め方

Stackheroドキュメントへようこそ

Stackheroは、迅速にワークフローを構築できるよう設計された、完全マネージドのNode-REDクラウド環境を提供しています:

  • シームレスなIoT統合のための組み込みMQTTサーバー(Mosquitto)
  • フローや設定を管理できるNode-RED管理UIへのフルアクセス
  • Node-RED Dashboardを標準搭載し、リアルタイムでの可視化が可能
  • 送信制限なしの専用SMTPメールサーバーを含む
  • インスタンスを常に最新に保つためのワンクリックアップデート
  • カスタムドメイン名と自動HTTPS対応:例 https://node-red.your-company.com
  • プライベートかつ専用インフラによる高いパフォーマンスと強固なセキュリティ

約5分でセキュアかつ本番運用に対応したNode-REDクラウドホスティングインスタンスを立ち上げることができます。Stackheroがセットアップ、アップデート、インフラ管理を担当するため、オートメーションの構築に集中していただけます。

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 });

注意 数ファイル以上を保存する予定がある場合は、オブジェクトストレージサーバーを使用することをお勧めします。オブジェクトストレージサーバーは、S3プロトコルのようにAPIを介してファイルを管理、共有、アクセスしやすくします。この目的のために、Stackheroで利用可能なS3互換のオブジェクトストレージサーバーを2分で提供するMinIOサービスを検討してください。