【问题标题】:pm2 not starting server on elastic beanstalkpm2 没有在弹性 beantalk 上启动服务器
【发布时间】:2016-09-07 19:38:34
【问题描述】:

我遇到了一个问题。我已将我的 nodejs websocket 应用程序部署到 Amazon elastic beanstalk。我正在尝试将应用程序作为守护进程运行,这就是为什么我在 ebextension 中使用 configfile 全局安装了pm2

container_commands:

01_node_symlink:    
  command: "ln -sf `ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin/node /bin/node"
02_npm_symlink:     
  command: "ln -sf `ls -td /opt/elasticbeanstalk/node-install/node-* | head -1`/bin/npm /bin/npm"   
03_pm2_install:     
  command: "if [ ! -e /bin/pm2 ]; then npm install pm2 -g; fi"
  ignoreErrors: true 

作为弹性beantalk自动启动服务器,使用pm2我已经在我的package.js中编写了启动命令

start:"pm2 start server.js -i 0 --name="hub""

但是当 elastic beanstalk 使用此命令启动服务器时,它会进入启动-停止循环并使用所有 cpu。 在此先感谢

【问题讨论】:

    标签: node.js amazon-web-services amazon-elastic-beanstalk


    【解决方案1】:

    那是因为 pm2 进程在启动服务器后就退出了,所以 eb 再次运行它。在命令中添加“&& pm2 logs”以使其保持打开状态。

    【讨论】:

    • 你是对的。我在 package.json 的脚本中添加了poststart: pm2 log 来解决它。
    猜你喜欢
    • 1970-01-01
    • 2018-03-01
    • 2018-09-10
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    • 1970-01-01
    • 2016-02-11
    • 2020-12-26
    相关资源
    最近更新 更多