如何为节点js express app创建pm2 ecosystem.json文件,该应用程序开始使用npm start?

问题描述 投票:1回答:1

我想将pm2用于node js express app。我可以使用npm start启动节点js服务器。我想在ecosystem.json文件中配置相同,以便我可以使用pm2工具开始。我也想以集群模式开始。

请注意,我可以使用以下命令启动节点js应用程序

pm2 start“/ usr / bin / npm”--name“blaze-node” - start -i 0

上述命令有两个问题。

  1. 它未在ecosystem.json文件中配置。
  2. 它不遵守-i 0参数。它只启动单个实例。

更多信息

下面是ecosystem.json文件

   {
   "apps":[
      {
         "name":"blaze-node",
         "script":"npm",
         "exec_mode":"cluster",
         "instances":"0",
         "env_dev":{
            "watch":true,
            "NODE_ENV":"dev"
         },
         "env_qa":{
            "watch":false,
            "NODE_ENV":"qa"
         },
         "env_prod":{
            "watch":false,
            "NODE_ENV":"prod"
         }
      }
   ]
}

如果我执行下面的命令pm2 start ecosystem.json --env dev它会显示好的输出,显示进程已经启动。但是在3000端口上没有听到任何声音。

相反,当我使用命令而不使用ecosystem.json文件,如下所示

pm2 start“/ usr / bin / npm”--name“blaze-node” - start -i 0

除了上面提到的那两个问题外,每件事情都很好。

请帮忙。

javascript node.js express npm pm2
1个回答
0
投票

您可以在pm2 config.js中使用“script”,“args”和“node_args”的组合来实现此目的。让pm2脚本入口点调用npm脚本入口点来调用脚本听起来反直觉!最好在此时绕过package.json,并使用这3个配置参数组合实现相同的脚本执行

© www.soinside.com 2019 - 2024. All rights reserved.