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を起動し、[ファイル] → [新規] を開き、書類の種類にアプリーケーションを選択する。

左側のウィンドウのアクションから「シェルスクルプを実行」を選びダブルクリックする。

右側のウィンドウのエディターの中に前述したサーバを起動する foreverコマンドをそのまま記述する。

[ファイル] → [保存] により、アプリケーションを作成してファイル(.app)に出力する。


作成したアプリケーションを OS立ち上げ時に起動するアプリケーションとして登録する。
[システム環境設定] → [ユーザとグループ] → [ログイン項目]
