本番環境で「npm rnu start
」をしたら、
途中で落ちて起動していない状態になってしまったんだけど
対処方法ってあるのかな?
Node.jsでは予期しないエラーが発生するとサーバーが落ちてしまうんだ。
でも、「pm2」とうアプリケーションを使うことでサーバーを永続的に起動状態にすることができるから解説していくね!
目次
pm2とは?
「pm2」はアプリケーション毎の起動・停止の管理やログ管理、CPUやメモリなどモニタリングができるプロセス管理のアプリケーションです。
Node.jsアプリケーションのプロセスの状態を常に監視し、プロセスが停止したりメモリの上限を超えたときなど、異常終了したときに自動で再起動を行ってくれます。
pm2の使い方
pm2のインストール
まずはpm2をインストールします。
グローバルインストールをするため-g
を付けます。
npm install -g pm2
グローバルへインストールできているか確認します。
npm list -g
pm2が表示されていたらインストールは完了です。
ビルド
ビルド作業をします。
ビルドをすることでページを高速で開けるようになります。
npm run build
pm2で永続化開始
pm2で永続化をします。
--name "任意の名前"
で任意の名前を設定しておくことで、管理がしやすくなるため指定しておきます。
pm2 start npm --name "任意の名前" -- start
永続化を確認
pm2で永続化できているか確認をします。
pm2 list
pm2の停止
pm2を停止するときの方法です。
pm2 stop 設定した任意の名前
pm2の再起動
pm2を再起動するときの方法です。
pm2 restart 設定した任意の名前
まとめ
「pm2」を使うことで簡単に起動の状態を永続化できるよ!
実際に使って試してみる!