Node-REDをWindows 11環境に構築する手順

#### 前提条件
1. **Node.jsのインストール**: Node-REDはNode.js上で動作するため、Node.jsをインストールする必要があります。

#### ステップ1: Node.jsのインストール
1. Node.jsの公式ウェブサイト（[https://nodejs.org/](https://nodejs.org/)）にアクセスします。
2. 推奨される安定版（LTS版）をダウンロードしてインストールします。

#### ステップ2: Node-REDのインストール
1. WindowsのコマンドプロンプトまたはPowerShellを開きます。
2. 以下のコマンドを実行してNode-REDをグローバルにインストールします：
   ```
   npm install -g --unsafe-perm node-red
   ```

#### ステップ3: Node-REDの起動
1. コマンドプロンプトまたはPowerShellで以下のコマンドを実行してNode-REDを起動します：
   ```
   node-red
   ```
2. 起動後、表示されるURL（通常は [http://127.0.0.1:1880](http://127.0.0.1:1880)）にブラウザでアクセスするとNode-REDのエディタが表示されます。

#### ステップ4: 自動起動の設定
1. `pm2`をインストールします（まだの場合）：
   ```
   npm install -g pm2
   ```
2. Node-REDをPM2で起動します：
   ```
   pm2 start node-red --name node-red
   ```
　 ※pm2 でNode-REDを直接起動するための適切なJavaScriptファイルを指定する必要があります。
     pm2 start C:\Users\User\AppData\Roaming\npm\node_modules\node-red\red.js --name node-red

   
3. `pm2-windows-startup`をインストールしてWindowsでPM2の自動起動を設定します：
   ```
   npm install pm2-windows-startup -g
   pm2-startup install
   ```
4. 現在のPM2プロセスリストを保存します：
   ```
   pm2 save
   ```

これらの手順により、WindowsでPM2が自動的にNode-REDを起動するように設定されます。PCを再起動しても、Node-REDは自動的に起動します。

#### 注意点
- Windowsのセキュリティソフトウェアやファイアウォールの設定によっては、Node-REDのインストールまたは実行時に問題が生じることがあります。この場合は、セキュリティ設定を確認してください。
- Node-REDは定期的にアップデートされます。最新の機能を利用するためには、定期的に更新を行うことをお勧めします。

#### 事後追記
`services.msc`を使用してNode-REDの状態を直接確認することはできません。`services.msc`はWindowsサービスの管理を行うツールであり、Node-REDが標準のWindowsサービスとしてインストールされている場合にのみ使用できます。

ただし、Node-REDをPM2と一緒に使用してWindowsサービスとして設定した場合、`services.msc`ではPM2自体の状態を確認できますが、Node-REDの個々のプロセス状態を直接確認することはできません。PM2はNode-REDのプロセスを管理しているため、Node-REDの状態を確認するにはPM2のコマンドを使用する必要があります。

### Node-REDの状態を確認する方法

1. **PM2を使用する**: PM2のコマンド（`pm2 list`、`pm2 show node-red`、`pm2 logs node-red`）を使用してNode-REDの状態、ログ、その他の詳細を確認します。
   ```
   pm2 list
   ```
   ```
   pm2 show node-red
   ```
   ```
   pm2 logs node-red
   ```

2. **Node-REDのインターフェースを確認する**: Node-REDが動作しているかどうかを確認するもう一つの方法は、ブラウザでNode-REDのウェブインターフェース（通常は [http://127.0.0.1:1880](http://127.0.0.1:1880)）にアクセスすることです。


Node-REDを標準のWindowsサービスとして直接インストールした場合のみ、`services.msc`でその状態を確認できますが、これは通常のインストール方法ではありません。



- **pm2 restart node-red**: Node-REDプロセスを再起動します。PM2が管理しているNode-REDプロセスを再起動します。
- **pm2 stop node-red**: Node-REDプロセスを停止します。PM2が管理しているNode-REDプロセスを停止します。
- **pm2 list**: PM2が管理しているプロセスのリストを表示します。各プロセスのID、名前、モード、ステータス、CPU使用率、メモリ使用量などの詳細が表示されます。
- **pm2 delete 0**: ID 0のプロセスをPM2のプロセスリストから削除します。指定したプロセスをPM2の管理から削除します。
- **pm2 save**: 現在のプロセスリストを保存されたリストと同期させます。プロセスに加えられた変更が保存され、PM2の構成に反映されるようにします。
- **pm2 restart node-red**: Node-REDプロセスを再起動します。PM2が管理しているNode-REDプロセスを再起動します。
- **pm2 restart C:\Users\user\AppData\Roaming\npm\node_modules\node-red\red.js --name node-red**: 特定のファイルパスからNode-REDプロセスを再起動します。指定したファイルパスからNode-REDプロセスを再起動し、名前を"node-red"として設定します。
- **netstat -ano | findstr :1880**: ポート1880でリッスンしているプロセスを確認するために使用されます。そのポートを使用しているネットワーク接続と関連するプロセスに関する情報が表示されます。
- **pm2 kill**: PM2で管理されているすべてのプロセスを停止し、PM2自体をシャットダウンします。実行中のすべてのプロセスを終了し、PM2を停止します。
- **netstat -ano | findstr :1880**: ポート1880でリッスンしているプロセスを確認するために使用されます。そのポートを使用しているネットワーク接続と関連するプロセスに関する情報が表示されます。
- **pm2 resurrect**: PM2を再起動し、以前に管理されていたプロセスをシャットダウンまたはシステム再起動後に復元します。PM2で管理されているプロセスの状態を復元するのに役立ちます。
- **pm2 start node-red**: Node-REDプロセスを開始します。PM2が管理しているNode-REDプロセスを開始します。