Windowsで実行する

このページでは、Microsoft Windows環境におけるNode-REDのセットアップについて具体的な手順を紹介しています。この手順はWindows 10固有ですが、Windows 7およびWindows Server 2008R2以降でも利用できるはずです。Windows 7またはWindows Server 2008R2以前のバージョンは現在サポートされていないため、推奨できません。

Note : 以下の説明の中では、「コマンドプロンプト」についての説明があります。コマンドプロンプトと書かれている場合、Windows cmdまたはPowerShellターミナルシェルを指します。PowerShellを使うことで、Windowsのすべての新しいバージョンでLinux/Macに似たコマンドやフォルダ名を利用できるため、PowerShellの利用を推奨します。

クイックスタート

1. Node.jsのインストール

Node.jsの最新版8.x LTSをNode.js公式ホームページからダウンロードします。このサイトはあなたのシステムに最適なバージョンを提供します。

ダウンロードしたMSIファイルを実行します。Node.jsのインストールにはローカル管理者権限が必要です。 つまり、ローカル管理者ではない場合、インストール時に管理者パスワードの入力を求められます。デフォルト設定でインストールをおこなってください。 インストールが完了したら、開いているコマンドプロンプトを一旦閉じ、再度開いて新しい環境変数が登録されていることを確認してください。

インストール後、Node.jsとnpmが正しくインストールされていることを確認するため、コマンドプロンプトを開き、以下のコマンドを実行してください。

PowerShellを利用する場合: node --version; npm --version

cmdを利用する場合: node --version && npm --version

以下のような出力が戻ってくるはずです。:

v8.9.0
5.5.1

2. Node-REDのインストール

グローバルモジュールとしてNode-REDをインストールすると、システムパスにnode-redコマンドが追加されます。コマンドプロンプトで以下のコマンドを実行します。:

npm install -g --unsafe-perm node-red

3. Node-REDの実行

インストールが完了すれば、Node-REDを実行する準備が整いました。


Windowsでの別のインストール方法

このセクションでは、Node.js、npmおよびWindows環境でのNode-REDのためのNodeのインストールに必要なWindowsビルドツールの、他のインストール方法についての情報を提供します。

Note : 具体的な指示がない限り、管理者として(別名「権限昇格」)コマンドプロンプトを利用しないでください。Node-REDおよびNode.jsについて学習する際にはコマンドプロンプトに非常に精通している必要があり、MicrosoftによるPowerShellの記事のいくつかを読むことは価値があります。PowerShellチュートリアルおよびPowerShellワンライナーといったサイトも役立つかもしれません。

WindowsのNode.jsの一般的なインストールにはローカル管理者権限が必要です。Node.js公式ホームページから適切なバージョンをダウンロードします。このサイトは適切なバージョンを提供してくれます。64ビット版Windowsでは32ビット版または64ビット版を利用できますが、64ビット版を利用することを推奨します。いくつかの理由で別のバージョンをインストールが必要になる場合、ダウンロードページを使うことができます。

MSIインストーラによってNode.jsをインストールするには2つの方法があります。

  1. Chocolateyパッケージマネージャを利用する

    Chocolateyは、LinuxのAPTまたはyum、もしくはMacでのbrewに似たWindowsのパッケージマネージャです。すでにChocolateyが使える場合、このツールをNode.jsのインストールに利用することができます(例えば、nodejs-ltsパッケージを利用します)。ただし、多くのパッケージの管理が不確実であり、これらのパッケージは上述とは異なるフォルダ位置が利用されるかもしれません。

  2. Node.jsバージョンマネージャを利用する

    nvm-windowsのようなNode.jsバージョンマネージャを利用することで、Node.js開発や異なるバージョンに対するテストが必要な場合に非常に便利です。利用するNode.jsのバージョンを切り替えたとき、グローバルパッケージを再インストールする必要があり、ローカルパッケージの再インストールが必要かもしれないことを覚えておいてください。

Note : MicrosoftはV8の代わりにMicrosoft Chakra Core JavaScriptエンジンを利用したNode.jsのパラレルバージョンを保守しています。テストを実施していないため、これはNode-REDの利用環境に推奨できません。

Windowsでのnpm

Node.jsをインストールした場合、npmパッケージマネージャもインストールされます。Node.jsのリリースに含まれているnpmよりも新しいリリースのnpmをインストールすることを推奨する指示をウェブ上で見かけることがあります。後々、互換性のないバージョンになりやすいことから、これは推奨できません。Node.jsのリリースは非常に規則正しく、これはnpmのアップデートに追従するには充分です。

ユーザ間のNode-REDの共有

Node.jsは、予想どおりのProgram Filesフォルダにインストールされます。しかし、npm -gを利用してNode-REDのようにグローバル_パッケージ_をインストールした場合、現在のユーザにとっての$env:APPDATA\npmフォルダ(cmdを利用した%APPDATA%\npm)にインストールされます。複数ユーザがログインするPCまたはサーバにインストールし、Node-REDのようなNode.jsアプリケーションを実行するユーザのログインではなく管理者ログインを使用してインストールする場合、これはあまり役に立ちません。

Note : %APPDATA%のようなフォルダ名が何に変更されたのかを確認するには、Windowsファイルエクスプローラのアドレスバーに入力するだけでわかります。PowerShellではcd $Env:APPDATA(cmdではcd %APPDATA%)というコマンドを入力します。

これを修正するためには、他のユーザにフォルダに関する権限を与え、ユーザ環境変数pathにそのフォルダが含まれていることを確認します。

また、グローバルファイルを他のユーザからアクセスできる場所に変更します。これらの変更をおこなったNode-REDを実行するであろうユーザを利用して確認してください。例えば、$env:ALLUSERSPROFILE\npmglobalの位置を変更するためには、PowerShellで以下のようにします。:

mkdir $env:ALLUSERSPROFILE\npmglobal
npm config set prefix $env:ALLUSERSPROFILE\npmglobal

そしてnpmキャッシュフォルダも変更したいはずです。:

mkdir $env:ALLUSERSPROFILE\npmglobal-cache
npm config set cache $env:ALLUSERSPROFILE\npmglobal-cache --global

以上の変更を使用する場合、システム環境変数 PATH に新しい プレフィックス フォルダを追加することができ、ユーザ環境変数Pathから古いフォルダを削除することができます。環境変数PATHを変更するため、スタートメニューまたはCortanaに環境を入力し、 環境変数を編集 を選択します。

Node-REDを実行する各ユーザのため、他のユーザで上記の設定が正しいことを確認します。

WindowsビルドツールでNode.jsをインストールする

Node-REDまたはインストールされたノードで利用されるNode.jsモジュールの多くは、Windowsで動作する前にコンパイルが必要なバイナリコンポーネントを持っています。Windowsでnpmがバイナリコンポーネントをコンパイルできるようにするため、管理者としてコマンドプロンプトを利用を参考にしてWindowsビルドツールモジュールをインストールします。

npm install --global --production windows-build-tools

組込みPython v2.7を利用するためにインストールしたい場合、次のコマンドを利用します。:

npm install --global --production --add-python-to-path windows-build-tools
Notes:
  • Windows環境下ではNode.jsモジュールのすべてが動作するわけではなく、インストール時の出力でエラーについて慎重に確認してください。
  • インストール中、node-gypコマンドによっていくつかのエラーが報告されることがあります。 これらは典型的な致命的ではないエラーであり、オプションの依存関係が自身をビルドするために必要なコンパイラに関連しています。 Node-REDはこれらのオプションの依存関係がなくても動作します。 致命的なエラーが発生した場合、まずインストールしたwindows-build-toolsモジュールを確認し、コマンドプロンプトのウィンドウを一旦閉じてから再び開いてください。

Windowsで実行する

インストール後、Node-REDを実行する簡単な方法はコマンドプロンプトでnode-redコマンドを利用することです。: npmのグローバルパッケージとしてNode-REDをインストールした場合、node-redコマンドを利用することができます。:

C:>node-red

この操作ではターミナルにNode-REDログが出力されます。Node-REDの実行状態を維持するため、ターミナルは開いたままにしなければなりません。

Node-REDを実行すると%HOMEPATH%フォルダ内に.node-redという新しいフォルダが作成されることに注意してください。これがuserDirフォルダであり、現在のユーザのNode-RED設定のホームフォルダと考えてください。このフォルダはドキュメントでは~/.node-redとしてしばしば参照されます。~はUnixのようなシステムでのユーザホームフォルダの省略形です。推奨にあるとおりコマンドラインとしてPowerShellを利用している場合、同じような参照を利用できます。古いcmdシェルを利用している場合、これは動作しません。

これではじめてのフローを作成することができます。

PM2を利用する

Node-REDのフローまたはノードを開発するためにWindowsを利用する場合、PM2を利用してNode-REDを起動することは非常に役立ちます。これはファイルが変更されたときに自動的に再起動するように設定することができ、Node-REDの起動とログ出力の管理を常におこなうことができます。

起動時にNode-REDを実行する

Node-REDのプロダクションプラットフォームとしてWindowsを利用したい場合、Windowsタスクスケジュールのジョブを設定しておくとよいでしょう。それには以下のようにします。:

  1. スタートメニューで、「タスクスケジューラ」を入力し、一致する検索結果をクリックします。
  2. 右側のメニューで「タスクの作成…」をクリックします。手順にしたがって新しいタスクを作成します。

セットアップをおこなったユーザでログインをおこない、Node-REDが起動時実行されていることを確認します。システム起動時にNode-REDを常に実行させるため、トリガーに「スタートアップ時」を利用することができます。操作には、C:\Users\<user>\AppData\Roaming\npm\node-red.cmd<user>は自身のユーザ名に置換します)を詳細として設定した「プログラムの開始」を利用します。

ネットワークが利用可能な場合のみ起動するようにしたいこともあるでしょう。また、ジョブが失敗した場合、再実行したいこともあるでしょう。おそらく1分ごとに再起動しますが、それも3回までです。それまでに起動しない場合、エラーは致命的であり、何らかの操作が必要でしょう。イベントログを見ることで失敗について確認することができます。この方法での実行時にログにアクセスしたい場合、srdおよびファイル(更新時に上書きされないように別のスタートアップファイルを作成することを推奨します)に出力されるエラーへのリダイレクトのため、node-red.cmdを修正しなくはなりません。