サンプルアプリケーションの作成
以下のフォルダを作成mkdir /mnt/c/work/www/node_appcd /mntc/work/www/node_appmkdir appmkdir logmkdir sockecosystem.config.js でpm2の設定を行うmodule.exports = { apps: [{ name: "app", script: "./app/index.ts", watch: ["app"], instances: 1, exec_mode: "cluster", "log-date-format": "YYYY-MM-DD HH:mm Z", error_file: "./log/error.log", out_file: "./log/access.log", node_args: ["--inspect=0.0.0.0:9229"], env: { "NODE_OPTIONS": " --inspect=localhost:9229" } }] }inspectでデバッグ用のポートを設定していますが、exec_modeがclusterの場合、ポート番号がプロセスごとに+1されて作られます最初のプロセスは9229+1で9230になりますexec_modeがforkの場合は指定通り9229となりますまた、clusterの場合はオプション指定がnode_argsになり、forkの場合はNODE_OPTIONSになるので注意が必要ですさらにforkの場合、node_argsがあると起動に失敗します色々と勘弁して欲しい仕様ですapp/index.ts//ドメインソケット用パス const SOCK_PATH = 'sock/app.sock.' + (process.env.NODE_APP_INSTANCE '0') console.log(SOCK_PATH) var fs = require('fs') var http = require('http') var server = http.createServer() server.on('request', function
2019/07/17 22:31