Skip to content

Node-RED

Description:
ハードウェアデバイス、API、オンラインサービスを新しい方法で相互接続するための、フローベースのビジュアルプログラミングツール。
Updated:
2026/02/07
  • ビジュアルプログラミング: ブラウザ上のエディタで「ノード」をドラッグ&ドロップし、線でつなぐだけで複雑なロジックを直感的に構築可能。
  • 豊富なノードライブラリ: 標準ノードに加え、コミュニティによって公開されている数千の追加ノード(Palette)により、各種SNS、クラウドサービス、IoTデバイスとの連携が容易。
  • JavaScriptによる拡張: 標準的な機能では足りない場合、Functionノード内にJavaScriptを直接記述することで、高度なデータ処理や独自のロジックを実装可能。
  • 軽量なランタイム: Node.js上で動作し、Raspberry Piのような低リソースなエッジデバイスからクラウド環境まで、幅広く実行可能。
  • リアルタイム性: WebSocketやMQTT等のプロトコルを標準サポートしており、リアルタイムな状態監視や双方向制御に最適。
  • IoTデータの集約と可視化: 各種センサーから取得したデータを加工し、ダッシュボードに表示したりデータベースに保存したりするフローの構築。
  • ホームオートメーションの高度化: Home Assistant等と連携し、より条件分岐の多い複雑な自動化ロジックをNode-RED側で集中管理。
  • APIブリッジ・中継リレー: 異なるプロトコルやデータ形式を持つAPI同士を接続し、データのフォーマット変換やフィルタリングをノンコードで実現。
  • 通知システムの自動化: エラー検知や特定の条件を満たしたときに、Slack、LINE、Discordなどへ即座に通知を飛ばすワークフローの構築。

  • Docker (推奨) 以下のコマンドで、永続化ボリュームを指定して簡単に起動できます。
docker run -it -p 1880:1880 -v node_red_data:/data --name mynodered nodered/node-red
  • npm (ローカルインストール) Node.jsがインストールされている環境であれば、以下のコマンドでグローバルに導入できます。
npm install -g --unsafe-perm node-red

実行はターミナルで node-red と入力するだけです。

  1. 起動後、ブラウザで http://localhost:1880 にアクセスします。
  2. 左側の「パレット」からノードを選択し、中央のワークスペースに配置してフローを作成します。
  3. 右上の「デプロイ」ボタンを押すと、作成したフローが即座に実行されます。

ノードの追加(パレット管理)

Section titled “ノードの追加(パレット管理)”

標準で入っていない機能(例:SwitchBot連携や特定のDB接続)が必要な場合は、右上のメニューから「パレットの管理」→「ノードを追加」で検索してインストールできます。

「debugノード」をフローの途中に挿入し、右側のデバッグタブを確認することで、ノード間を流れるメッセージ(msg.payload等)の内容をリアルタイムで検証できます。