1.はじめに
サポートアプリケーションサービス設定ファイルの設定にPM2の方法は、ファイル形式がサポートされている構成でJavascript
、JSON
、YAML
。以下の焦点Javascript
、JSON
これら二つのフォーマット。
第二に、構成ファイル
1. Javascript
フォーマット
次のコマンドを入力して、構成ファイルテンプレートを作成します。
pm2 init
pm2 ecosystem
世代はecosystem.config.js
次のとおりです。
module.exports = {
apps : [{
name: 'API',
script: 'app.js',
args: 'one two',
instances: 1,
autorestart: true,
watch: false,
max_memory_restart: '1G',
env: {
NODE_ENV: 'development'
},
env_production: {
NODE_ENV: 'production'
}
}],
deploy : {
production : {
user : 'node',
host : '212.83.163.1',
ref : 'origin/master',
repo : '[email protected]:repo.git',
path : '/var/www/production',
'post-deploy' : 'npm install && pm2 reload ecosystem.config.js --env production'
}
}
};
必要に応じて構成内容を変更し、コマンドを開始できます。
pm2 start ecosystem.config.js
JavaScript設定ファイルを使用するには、ファイル名の末尾が .config.js
2. json
フォーマット
たとえば、次のような名前config.json
です。
{
"apps": [{
"name": "test", //名称
"script": "server.js", //程序入口
"cwd": "./", //根目录
"instances": 1,
"error_file":"./logs/error.log",//错误输出日志
"out_file":"./logs/out.log", //日志
"log_date_format":"YYYY-MM-DD HH:mm Z" //日期格式
}]
}
開始コマンド:
pm2 start config.json
package.json
ここに注文を書き込むこともできます。次のように:
することによりnpm run pm2
開始
必要な数のJSON
アプリケーション宣言を設定できます。
{
"apps": [
{
"name": "testOne",
"script": " testOne/server.js",
"instances": 1,
"log_date_format": "YYYY-MM-DD HH:mm Z",
"max_memory_restart": "500M"
},
{
"name": "testTwo",
"script": " testTwo/server.js",
"instances": 1,
"log_date_format": "YYYY-MM-DD HH:mm Z",
"max_memory_restart": "500M"
}
]
}
3.一般的な構成アイテムの説明:
apps
:Json構造、appsは配列で、各配列メンバーはpm2で実行されるアプリケーションに対応します。
name
:アプリケーション名。
cwd
:アプリケーションが配置されているディレクトリ。
script
:アプリケーションのスクリプトパス。
log_date_format
:ログの日付形式(YYYY-MM-DD HH:mm:ss;など)を指定します。
error_file
:アプリケーションのエラーログファイルをカスタマイズします。コードエラーはこのファイルにあります。
out_file
:大量の標準出力を印刷するなどのカスタムアプリケーションログファイルを使用すると、pm2ログが大きくなりすぎます。
pid_file
:カスタムアプリケーションのpidファイル。
interpreter
:指定されたスクリプトインタープリター。
interpreter_args
:インタプリタに渡されるパラメータ。
instances
:アプリケーション起動インスタンスの数。クラスターモードでのみ有効で、デフォルトはforkです。
min_uptime
:最小実行時間は、ここでは60秒に設定されています。つまり、アプリケーションが60秒以内に終了すると、pm2はプログラムが異常終了したと見なし、この時点で再起動の回数max_restartsがトリガーされます。
max_restarts
:アプリケーションが異常終了して再起動する回数を設定します。デフォルトは15回です(0から数えます)。
autorestart
:デフォルトはtrueで、例外が発生すると自動的に再起動します。
cron_restart
:再起動で解決できる問題を解決するために定期的に開始します。
max_memory_restart
:自動再起動を超える、メモリ制限の最大数。
watch
:監視モードを有効にするかどうか、デフォルトはfalseです。trueに設定すると、アプリケーションが変更されたときにpm2が自動的に再ロードされます。ここでは、監視するファイルを設定することもできます。
ignore_watch
:監視フォルダーを無視し、正規表現をサポートします。
merge_logs
:新しいログの代わりに追加ログを設定します。
exec_interpreter
:アプリケーションのスクリプトタイプ。デフォルトはnodejsです。
exec_mode
:アプリケーションの起動モード、サポートフォークおよびクラスターモード。デフォルトはフォークです。
autorestart
:アプリケーションがクラッシュまたは終了したときの自動再起動を有効または無効にします。
vizion
:vizion機能(バージョン管理)を有効/無効にします。
env
:環境変数、オブジェクトタイプ。
force
:デフォルトはfalse、trueの場合、スクリプトを繰り返し開始できます。pm2はこれを推奨しません。
restart_delay
:異常な再起動の場合、再起動時間を遅らせます。