如何使用 PM2 进行自动部署

阅读时长 3 分钟读完

PM2 是一个高级的 Node.js 进程管理器,它可以管理应用程序的启动、重启和停止,以及实现自动部署等功能。本文将介绍如何使用 PM2 进行自动部署,包括安装 PM2,配置自动部署,以及实现自动部署的示例代码。

安装 PM2

使用 npm 进行安装 PM2,命令如下:

-g 表示全局安装,这样就可以在任何地方使用 PM2 了。

配置自动部署

首先需要将代码上传到服务器上,可以使用 git 或者 scp 等命令进行复制。假设代码已经上传到了服务器 /var/www/ 目录下,那么可以创建一个名为 deploy.sh 的自动部署脚本,内容如下:

该脚本会进入到 myapp 目录下,从 git 仓库中拉取最新代码,执行 npm install 安装依赖,最后重启 myapp 应用程序。因为使用了 PM2,所以部署时不需要手动重启应用程序,PM2 会自动完成这个过程。

可以使用 chmod 命令将 deploy.sh 脚本变为可执行的:

如果要实现真正的自动部署,可以使用 Git Hooks,具体内容可以参考官方文档。

示例代码

下面是一个简单的 Node.js 应用程序,使用 Express 框架实现了一个简单的 HTTP 服务器:

-- -------------------- ---- -------
----- ------- - ------------------
----- --- - ---------

------------ ----- ---- -- -
  --------------- --------
--

---------------- -- -- -
  -------------------- --- --------- -- ---- -------
--

可以将以上代码保存到 myapp 目录下的 index.js 文件中。接下来创建一个名为 app.json 的 PM2 配置文件,内容如下:

-- -------------------- ---- -------
-
  ------- -
    -
      ------- --------
      --------- -----------
      ------------ --
      ------ -
        ----------- -------------
        ------- ----
      -
    -
  -
-

该配置文件定义了一个名为 myapp 的应用程序,使用 index.js 文件作为应用程序的入口,实例数为 1,环境变量 NODE_ENV 为 production,端口号为 3000。

接下来可以使用以下命令启动该应用程序:

使用以下命令查看应用程序状态:

使用以下命令重启应用程序:

最后,使用以下命令将 deploy.sh 脚本部署到服务器上:

至此,就完成了使用 PM2 进行自动部署的全部步骤,可以进行测试和上线了。

总结

本文介绍了如何使用 PM2 进行自动部署,包括安装 PM2,配置自动部署,以及实现自动部署的示例代码。PM2 可以大大提高代码部署的效率和可靠性,值得广泛使用。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/645cb03a968c7c53b0f1e4f0

纠错
反馈