我使用pm2来管理我的节点js服务器。扼杀当我使用pm2.config.json文件然后它没有识别相对路径和节点js服务器无法加载文件并尝试杀死节点js进程,当pm2看到节点进程被杀死然后它尝试重新启动节点并进入无限循环。以下是详细信息。
pm2.config.json
{
"apps": [
{
"name": "Application",
"script": "./server.js",
"watch": false
}
]
}
启动pm2的命令:
pm2 start dist/BHS/pm2.config.json
抛出错误:
BHS Application-0 (err): at Module._compile (module.js:456:26)
BHS Application-0 (err): at Object.Module._extensions..js (module.js:474:10)
BHS Application-0 (err): at Module.load (module.js:356:32)
BHS Application-0 (err): at Function.Module._load (module.js:312:12)
BHS Application-0 (err): at Function.Module.runMain (module.js:497:10)
BHS Application-0 (err):
BHS Application-0 (err): module.js:340
BHS Application-0 (err): throw err;
BHS Application-0 (err): ^
BHS Application-0 (err): Error: Cannot find module './server/config/DBConfig.js'
BHS Application-0 (err): at Function.Module._resolveFilename (module.js:338:15)
BHS Application-0 (err): at Function.Module._load (module.js:280:25)
BHS Application-0 (err): at Module.require (module.js:364:17)
BHS Application-0 (err): at require (module.js:380:17)
BHS Application-0 (err): at Object.<anonymous> (/Users/dilipkumar/Dilip/Projects/BHS/SourceCode/BHS/server.js:19:16)
BHS Application-0 (err): at Module._compile (module.js:456:26)
BHS Application-0 (err): at Object.Module._extensions..js (module.js:474:10)
BHS Application-0 (err): at Module.load (module.js:356:32)
BHS Application-0 (err): at Function.Module._load (module.js:312:12)
BHS Application-0 (err): at Function.Module.runMain (module.js:497:10)
然而,与pm2.config.json相同的作品
pm2 start --watch dist/BHS/server.js
请帮忙。
答案 0 :(得分:2)
根据PM2 docs,pm2启动它的启动模块(应用程序)。
所以最好的选择是使用绝对路径。
但是,如果您想通过相对路径启动它们,请使用&#39; cwd&#39;选项:
{
"name": "Application",
"script": "./server.js",
"cwd": "/srv/node-app/dist/BHS"
}
PM2还应该支持相对于用户homedir(~/path
)的路径,如果你想要比绝对路径更灵活但比完全&#39;更可靠的东西。相对的。