5

要在生产模式下启动sailsjs,您需要附加--prod.

跑: node app.js --prod

我正在使用 PM2 和一个简单的 json 文件进行设置,其中包含进程名称和脚本名称,以启动节点进程。

我将如何使用 PM2 传递生产参数?

4

7 回答 7

5

阅读PM2 JSON 应用声明。例如(未测试)

[{
  "name"      : "Sails",
  "script"    : "./app.js",
  "args"      : "['--prod']"
}]
于 2014-04-14T10:18:00.617 回答
2

首先删除: pm2 delete app

再次:

pm2 start app.js -x -- --prod

于 2015-10-26T19:22:51.900 回答
1

你也可以使用这样的东西:

NODE_ENV=production pm2 start app.js
于 2014-05-26T00:57:17.437 回答
1

根据官方文档,您可以这样做:

pm2 start app.js -x --prod
于 2015-07-02T05:53:11.230 回答
0

对于 pm2,如果您已经创建了应该在第一个过程中根据此 官方文档创建的生态系统.config.js 。默认情况下,它会考虑开发模式,如果要更改,请先使用以下命令删除以前的实例。

pm2 delete <ID|APP_NAME|SCRIPT|ALL|JSON>

然后使用以下命令启动实例。

pm2 start ecosystem.config.js --env production

并使用以下命令检查进程尾部 pm2 的日志。

pm2 logs
于 2017-04-24T07:06:16.840 回答
0

这是我的 PM2 配置文件,我在 PM2 下运行了多个服务,如下所示,apps.json

{
  "apps": [
    {
      "name"       : "TEST_APP",
      "script"     : "./app.js",
      "cwd"        : "/Users/username/app",
      "merge_logs" : true,
      "out_file"   : "logs/pm2-out.log",
      "error_file" : "logs/pm2-err.log",
      "instances"  : 3,
      "exec_mode"  : "cluster",
      "env"        : {
                        "NODE_ENV": "dev",
                        "PORT": "9999"
                     }, 
      "env_production": {
                        "NODE_ENV": "production",
                        "PORT": 9998
                     }  
    }
  ]
}
然后只需运行以下命令即可运行您的服务,

$ pm2 start apps.json --env production

您可以在此处包含PM2 文档中提到的其他参数。希望这可以帮助。

于 2017-11-08T11:09:17.253 回答
0

1.

NODE_ENV=production pm2 start app.js -- --prod

2.

NODE_ENV=production pm2 start app.js --name "myapp" -i max -- --prod

于 2019-05-03T09:52:36.150 回答