👋

[備忘] pm2のEcosystem Fileについて

2023/03/11に公開

pm2とは

pm2をつかうことでNode.jsのプロセス管理をすることができます。

ecosystem.config.js

ecosystem.config.jsの備忘です。問題が発生しても責任は負いかねますので参考までに。

module.exports = {
  apps: [
    {
      name: 'demo-app',
      cwd: '${APP_DIR}',
      script: 'yarn',
      args: 'start',
      error_file: "${PM2_DIR}/.pm2/logs/error.log",
      out_file: "${PM2_DIR}/.pm2/logs/app.log",
      exec_mode: "cluster",
      instances: -1,
      max_memory_restart: '2G',
      env: {
        NODE_ENV: 'production',
        // 環境変数はここ
      },
    },
  ],
};

アプリのディレクトリやログのディレクトリは各環境や要件によって置換すること。
clusterモードの場合、instancesを-1とすることでCPUのコア数-1でプロセスを立ち上げることができます。

設定ファイルを更新後に再起動

pm2 startOrRestart ecosystem.config.js

Discussion