Node. js サーバを常時起動する

JavaScript

Node. js サーバを常時起動する

macOS 10.15.7 / node v19.3.0

foreverモジュールのインストール

foreverはグローバルインストールする必要がある。
nodeモジュールのバージョン(19.3.0 )が新しすぎる場合、コマンド実行時に次のような警告メッセージが表示されるが動作に問題はないようだ。

node.jsで作成したサーバーアプリケーションの例

プロセスの起動/停止

foreverコマンドによりサーバアプリケーションを常駐プロセスとして起動する。
状態を表示する
プロセスを停止する

OS起動時にプロセスを起動する

Automatorを使って上記の foreverコマンドをひとつのアプリケーション(.app)に変換し、これをOS起動時に起動するアプリケーションに登録する。これにより PCが立ち上げるたびに自動的に Node.jsのサーバアプリケーションが常駐プロセスとして立ち上がる。
Automator.app は処理を自動化するツールである。コマンドの実行、アプリケーションの操作など一連の処理をワークフローにまとめ、ひとつのアプリケーションとして実行することができる。(使ったことはないが、Automatorの UIを眺める限り、かなり複雑な仕事ができそうである)
手順
Automatorを起動し、[ファイル] → [新規] を開き、書類の種類にアプリーケーションを選択する。
image1
左側のウィンドウのアクションから「シェルスクルプを実行」を選びダブルクリックする。
image2
右側のウィンドウのエディターの中に前述したサーバを起動する foreverコマンドをそのまま記述する。
image3
[ファイル] → [保存] により、アプリケーションを作成してファイル(.app)に出力する。
image4 image5
作成したアプリケーションを OS立ち上げ時に起動するアプリケーションとして登録する。
[システム環境設定] → [ユーザとグループ] → [ログイン項目] 
image6