【问题标题】:PM2 doesn't launch my nodejs app after server restart服务器重启后 PM2 没有启动我的 nodejs 应用程序
【发布时间】:2016-02-11 19:55:08
【问题描述】:

我在 Google Compute Engine 中设置了一个 vm 实例。我安装了 pm2,运行了这些命令: sudo env PATH=$PATH:/usr/local/bin pm2 startup -u zgintasz

pm2 start index.js

当我输入 pm2 list 时,我会看到我的应用进程正在运行。

我想确保我的 nodejs 应用程序在服务器重新启动时重新启动,所以我在 Google Developer Console 上单击了Reset,再次输入了pm2 list,但我看不到它不再运行。有什么问题?

【问题讨论】:

    标签: node.js google-app-engine google-compute-engine reset pm2


    【解决方案1】:

    我一直在同一条船上。经过一番搜索,我发现您需要在启动应用程序后“保存”。 'pm2 save' - 转储进程。

    这为我个人解决了这个问题,在我的 Ubuntu 机器上,但在我的 debian vps 上,它似乎仍然没有按应有的方式持续存在。

    【讨论】:

      【解决方案2】:

      您可以通过键入命令在服务器启动(/etc/init.d/)文件夹中配置 pm2:

      sudo env PATH=$PATH:path_to_bin pm2 startup os_name -u user_name
      

      这样做是在告诉服务器在服务器启动时启动 pm2 进程。但为了做到这一点,您需要存储 pm2 进程的状态,您可以通过以下方式完成:

      pm2 save
      

      在 upstart 中配置好你的 pm2 之后。

      因此,每当您的机器出现故障并重新启动它时,pm2 都会从您保存它的那一点开始运行您的节点进程的状态。

      【讨论】:

        【解决方案3】:

        使用“pm2 启动”

        • 不要加sudo

        【讨论】:

          猜你喜欢
          • 2016-01-16
          • 1970-01-01
          • 1970-01-01
          • 2016-10-04
          • 2015-05-18
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-10-15
          相关资源
          最近更新 更多