7

我正在为我的应用程序使用angular-fullstack。我想使用 pm2 启动我的应用程序。

Angular-fullstack 通过 启动生产模式grunt serve:dist,它运行多个任务,包括设置环境变量。
PM2 似乎使用 js 文件启动应用程序。像pm2 start server.js

我的问题是:
如何使用 PM2 通过 Grunt 在生产模式下启动我的应用程序?

我知道我的主应用程序文件是server/app.js,但我不能简单地这样做pm2 start server/app.js,因为那些环境变量没有正确设置。

4

2 回答 2

10

另一种方法是直接使用 pm2 启动 grunt:

cd /path/to/fullstack
pm2 start grunt --name website -- serve
于 2015-10-15T11:38:19.810 回答
6

我终于让 pm2 和 grunt 一起工作了。只需/usr/bin/grunt用作启动脚本,pm2 效果很好,参数由args部分传递。
这是我的生态系统.json 配置文件。(我正在使用 pm2 部署)

{
  "apps" : [{
    "name"      : "myapp",
    "script"    : "/usr/bin/grunt",
    "args"        : "['serve:dist']"
  }],
  "deploy" : {
    "production" : {
      "user" : "user-name",
      "host" : "server-address",
      "ref"  : "origin/develop",
      "repo" : "git-url",
      "path" : "/opt/deploy",
      "post-deploy" : "npm install && bower install && pm2 startOrRestart ecosystem.json --env production"
    }
  }
}
于 2014-11-09T15:13:20.513 回答