Jelastic-使用PM2进行零停机部署

时间:2019-10-08 08:52:00

标签: devops pm2 jelastic downtime

从GIT更新应用程序源代码时是否可能不停止nodejs应用程序?

当前Jelastic在从GIT提取文件之前停止了服务器:

Stopping nodejs server: 
[PM2] Applying action deleteProcessId on app [all](ids: 0,1)
[PM2] [app](0) ✓
[PM2] [app](1) ✓
[PM2] [v] All Applications Stopped
[PM2] [v] PM2 Daemon Stopped
[ OK ]

是否可以不停止该应用程序?我想叫“ pm2 reload app”而不是停止它。

我尝试使用grep搜索哪个脚本来执行此操作。不幸的是,没有文件包含Stopping nodejs server:行。

1 个答案:

答案 0 :(得分:0)

在从GIT更新之前,NodeJS服务已停止,因为它可能花费大量时间来提取所有更改并安装更新的依赖项-并且应用程序的行为可能无法预测 在这些操作中。    另请注意,只有在最后一次更新时才执行git的更新 在Jelastic上触发更新过程时,远程上的commit ID与上次本地提交ID不同-换句话说,如果远程上没有任何更改,则不会进行拉动和停止。