• V
 

ブート時にNode-REDを起動する

起動時にアプリケーションを実行、停止および監視する方法は数多くあります。 このガイドはこれを実行できるいくつかの方法を取り上げています。

Raspberry Pi、Debian、Ubuntu

私たちが提供しているRaspberry Piインストールスクリプトは 他のDebianのようなオペレーションシステムで利用することができます。

このスクリプトはsystemdサービスとしてNode-REDをインストールします。 さらなる情報は、 Raspberry Piで実行するというガイドを読んでください。

Raspbianを使用していない場合、 ローカルユーザのIDと環境に適したようにサービスファイルを編集する必要があるかもしれません。 編集方法の詳細はこちらで入手することができます。

RPMベースのLinux、RedHat、Fedora、CentOS

RPMベースのLinuxのためのインストールスクリプトをこちらで入手できるように提供しており、こちらもsystemdを設定します。

その他Linux、OSX

以下のガイドは大多数のユーザにとって最もわかりやすいと考えているものを提示しています。 Windowsでは、PM2はサービスとして自動起動しません - 以下のNSSMを利用するという手段をお勧めします。

PM2を利用する

PM2はNode.jsのプロセスマネージャです。 これは起動時にアプリケーションを実行することを簡単にし、必要であれば再起動することを保証します。

1. PM2をインストールする

sudo npm install -g pm2
Note : Linux/OS X上でroot以外のユーザーとして実行している場合にsudoが必要です。 Windows上で実行している場合、 sudoコマンドなしで管理者としてコマンドシェルで実行する必要があります。
Windows上で実行している場合、 こちらに記載されているようにtail.exeがパス上に存在することを確認する必要があります。

2. node-redコマンドの正しい位置を定義する。

Node-REDのグローバルインストールをおこなった場合、 Linux/OS Xにおいてnode-redコマンドはおそらく以下のようになります: /usr/bin/node-redまたは/usr/local/bin/node-red。 コマンドwhich node-redは位置を確認するために利用できます。

ローカルインストールした場合、 npm installを実行した場所から相対的にnode_modules/node-red/bin/node-redの位置になります。

3. Node-REDを実行することをPM2に指示する

以下のコマンドはPM2にNode-REDを実行することを指示しており、 /usr/bin/node-rednoode-redコマンドの位置と考えてください。

引数--は必ずnode-redに渡したい他の引数よりも前に現れなければなりません。

pm2 start /usr/bin/node-red -- -v
Note : Raspberry PiやBeagleBone Blackのようなメモリ容量が制限されたデバイスで実行する場合、 追加引数を渡すべきです:
pm2 start /usr/bin/node-red --node-args="--max-old-space-size=128" -- -v
Note : rootユーザとして実行したい場合、you must use the `--userDir` Node-REDがデータを保管する場所を指定するために`--userDir`オプションを利用すべきです。

これによってNode-REDがバックグラウンドで起動します。 以下のコマンドを利用することでプロセスについての情報を確認し、ログ出力にアクセスすることができます。

pm2 info node-red
pm2 logs node-red

PM2によるプロセスを管理についてのさらなる情報は、こちらで得ることができます。

4. 起動時に実行することをPM2に指示する

PM2は実行されているプラットフォームに適したスタートアップスクリプトを作成し、 設定することができます。

これらのコマンドを実行し、表示される指示に従ってください:

pm2 save
pm2 startup

systemdを利用する新しいLinuxシステムでは以下のようにします

pm2 startup systemd
一時的なNote: GitHubのPM2ではオープンになっているissueが存在し、 最近広められた課題を強調しています。 Linuxユーザは作成された`/etc/init.d/pm2-init.sh`ファイルを手動で編集し、以下の
export PM2_HOME="/root/.pm2"
を、以下のような正しいディレクトリを指すように置換する必要があります:
export PM2_HOME="/home/{youruser}/.pm2"

5. 再起動

最後に、再起動して期待通りに全てが起動しているかを確認します。

Windows

PM2はWindowsではサービスとして自動起動しません。 他の選択肢としてはNSMMを利用するという手段があります。NSSMの例は以下のコミュニティのリンクから確認できます。

その他の手段

その他多くの手段があります。 以下のうちいくつかはコミュニティのメンバーによって作成されました。