PM2问题-从ecosystem.config.js启动过程时找不到fs.readfilesync文件

时间:2019-06-26 09:33:01

标签: node.js linux pm2

我正在GVM实例中运行2个节点应用程序。在他们两个我正在加载一些SSL证书。如果应用程序分别运行,那么一切都很好(pm2 start path / to / server.js)

但是当我创建ecosystem.config.js并尝试启动两个服务器时,却找不到节点错误文件。

我的生态系统文件:

module.exports = {
apps:[
{ name:"ServerProd",
script: "./backend/server.js" },
{name:"SocketProd",
script:"./socket/WSserver.js"}
]
}

尝试使用(./文件名)(path.join( dir + ./文件名)和仅(文件名)来解析文件,结果均相同。我缺少什么?

1 个答案:

答案 0 :(得分:-1)

显然,问题是我的文件夹结构。 pm2生态系统文件以某种方式将根目录传递给nodejs实例。我设法通过在生态系统文件中添加“ cwd”选项来解决此问题。 所以:

apps:[
{ 
name:"ServerProd",
script: "./backend/server.js" 
},
{
name:"SocketProd",
script:"./socket/WSserver.js"}
]
}

成为:

module.exports = {
apps:[
{ 
name:"ServerProd",
script: "server.js",
cwd:"./backend/" 
},
{
name:"SocketProd",
script:"WSserver.js",
cwd:"./socket/"}
]
}

一切都会按预期进行