• V
 

ローカルでNode-REDを実行する

必須条件

ローカル環境にNode-REDをインストールするためにはサポートされているNode.jsのバージョンが必要です。

Raspberry PiまたはUbuntuまたはDiet-Piを含むDebianベースのオペレーティングシステムの場合、 こちらのRaspberry Piのインストールスクリプトを利用できます。
RedHat、FedoraおよびCentOSを含むRPMベースのオペレーティングシステムを利用している場合、 こちらで入手できるRPMのインストールスクリプトを利用することができます。

npmによってインストールする

Node-REDをインストールするため、Node.jsに同梱のnpmコマンドを利用できます:

sudo npm install -g --unsafe-perm node-red
Windowsを利用している場合、このコマンドをsudoからは始めません。 WindowsへのNode-REDのインストールに関する追加情報はこちらで確認できます。

このコマンドは、依存関係とともにNode-REDをグローバルモジュールとしてインストールします。

コマンドの出力の最後が以下のようになった場合、インストールが成功したと確認できます。

+ node-red@1.0.0
added 332 packages from 341 contributors in 18.494s
found 0 vulnerabilities

Dockerでインストールする

最も簡単な方法によってDockerで直接実行するには、次のようにします:

docker run -it -p 1880:1880 --name mynodered nodered/node-red

更なる追加情報は私達のdockerのガイドを参照してください。

Snapでインストールする

OSがSnapをサポートしている場合、 以下のようにNode-REDをインストールすることができます:

sudo snap install node-red

Snapパッケージとしてインストールした場合、 利用しなくてはならない以下のような外部の機能へのアクセスを持っていないセキュアなコンテナで実行できます:

  • メインシステムストレージにアクセスする。ローカルホームディレクトリへのread/writeのみ許可されています。
  • gcc - インストールしたいノードのバイナリコンポーネントをコンパイルするために必要です
  • git - プロジェクト機能を利用したい場合、必要になります
  • GPIOハードウェアへの直接アクセス権
  • フローの(例えば)Execノードで実行される外部コマンドへのアクセス権

コンテナのセキュリティは低下するものの より幅広いアクセスが可能な「クラシック」モードで実行することもできます。

実行する

一度グローバルモジュールとしてインストールしたら、 ターミナルにおいてnode-redコマンドを使ってNode-REDを起動することができます。 Ctrl-Cを使うか、ターミナルウィンドウを閉じることでNode-REDを停止することができます。

$ node-red

Welcome to Node-RED
===================

11 Oct 23:43:39 - [info] Node-RED version: v1.0.2
11 Oct 23:43:39 - [info] Node.js  version: v10.16.3
11 Oct 23:43:39 - [info] Darwin 18.7.0 x64 LE
11 Oct 23:43:39 - [info] Loading palette nodes
11 Oct 23:43:44 - [warn] rpi-gpio : Raspberry Pi specific node set inactive
11 Oct 23:43:44 - [info] Settings file  : /Users/nol/.node-red/settings.js
11 Oct 23:43:44 - [info] HTTP Static    : /Users/nol/node-red/web
11 Oct 23:43:44 - [info] Context store  : 'default' [module=localfilesystem]
11 Oct 23:43:44 - [info] User directory : /Users/nol/.node-red
11 Oct 23:43:44 - [warn] Projects disabled : set editorTheme.projects.enabled=true to enable
11 Oct 23:43:44 - [info] Creating new flows file : flows_noltop.json
11 Oct 23:43:44 - [info] Starting flows
11 Oct 23:43:44 - [info] Started flows
11 Oct 23:43:44 - [info] Server now running at http://127.0.0.1:1880/red/

そして、ブラウザでhttp://localhost:1880を指定することでNode-REDエディタにアクセスすることができます。

ログ出力は様々な情報を提供してくれます。

  • Node-REDおよびNode.jsのバージョン
  • パレットにノードをロードしようとしたときに発生したエラー
  • 設定ファイルおよびユーザディレクトリの位置
  • 利用しているフローファイルの名称

Node-REDはデフォルトのフローファイルとしてflows_<hostname>.jsonを利用します。 node-redコマンドの引数としてフローファイル名を渡すことで、 これを変更することができます。

コマンドラインの使い方

Node-REDはnode-redコマンドを使うことで起動できます。 このコマンドは様々な引数をとることができます:

node-red [-v] [-?] [--port PORT] [--safe] [--settings settings.js]
         [--title TITLE] [--userDir DIR] [flows.json|projectName]
オプション 詳細
-p, --port PORT ランタイムが待ち受けているTCPポートを設定します。デフォルト: 1880
--safe フローを起動せずにNode-REDを起動します。このオプションはエディタでフローを開き、フローを起動せずに変更をおこなえるようにします。変更をデプロイしたとき、フローは起動されます。
-s, --settings FILE 利用する設定ファイルを設定する。デフォルト: settings.js in userDir
--title TITLE プロセスウィンドウタイトルを設定する。
-u, --userDir DIR 利用するユーザディレクトリを設定する。デフォルト: ~/.node-red
-v 冗長な出力を取得します。
-?, --help コマンドラインの使い方を表示し、終了します。
flows.json|projectName プロジェクト機能を有効にしていない場合、作業したいフローファイルをこのオプションで指定します。プロジェクト機能が有効な場合、どのプロジェクトを利用するのかを指定します。

Node-REDはデフォルトのフローファイルとしてflows_<hostname>.jsonを利用します。 実行しているコンピュータがホスト名を変更した場合、 静的なファイル名をコマンドライン引数または設定ファイル内のflowsFileオプションとして、 提供することを保証する必要があります。

基盤であるNode.jsプロセスに引数を渡す

基盤であるNode.jsプロセスに引数を渡さなければならない機会はあります。 例えば、Raspberry PiやBeagleBone Blackのように、 メモリ容量が制限されたデバイスで実行する場合です。

これをおこなうためには、起動スクリプトのnode-redの代わりにnode-red-piを利用する必要があります。 Note: このスクリプトはWindowsでは利用できません。

反対に、nodeコマンドを利用してNode-REDを起動した場合、 red.jsおよびNode-RED自体に渡す引数を指定する前に Nodeプロセスに引数を渡す必要があります。

以下の2つのコマンドは2種類のアプローチを紹介しています:

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/

Node-REDをアップグレードする

Raspberry Piスクリプトを利用してNode-REDをインストールした場合、それを再利用することでアップグレードすることができます。 スクリプトはこちらで入手できます。

グローバルnpmパッケージとしてNode-REDをインストールした場合、 以下のコマンドによって最新版にアップグレードすることができます:

sudo npm install -g --unsafe-perm node-red
Windowsを利用している場合、コマンドの先頭にsudoは不要です。

次のステップ