使用 PM2 进行 Node.js 生产环境部署步骤解析

在 Node.js 应用开发中,将应用部署到生产环境是必要的一步。为了简化 Node.js 应用的部署流程,现在有很多工具可以帮助我们实现自动化部署及运维。其中,PM2 就是一款非常受欢迎的 Node.js 进程管理器,它可以帮助我们快速、方便地部署 Node.js 应用到生产环境,并支持自动重启等功能。本文将详细解析使用 PM2 进行 Node.js 生产环境部署的步骤,并给出示例代码。

安装 PM2

首先,我们需要安装 PM2。在命令行中执行以下命令:

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

部署 Node.js 应用

首先需要在服务器上克隆或上传您的 Node.js 应用程序。然后,使用以下命令启动您的应用程序:

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

其中 app.js 为您的 Node.js 应用程序名称。如果您的应用程序不是通过 node 命令启动的,那么您需要使用其他命令来运行它。在这种情况下,您可以使用以下模板启动您的应用程序:

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

例如,如果您的应用程序脚本名为 start.js,则可以使用以下命令来启动它:

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

在启动应用程序后,您可以使用以下命令查看应用程序的运行状态:

--- ------

设置 PM2 启动

当您的服务器重启时,您需要重新启动 PM2 和所有已启动的应用程序。为了避免手动重启每个程序,您可以设置 PM2 作为守护进程,并在系统启动时自动启动。

在 Linux 上,您可以使用 systemd 触发器来实现自动启动。为此,请创建一个 .service 文件,并将以下内容添加到文件中:

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

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

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

该代码应该设置 PM2 的启动参数,包括应用程序的名称、路径、启动命令,以及在发生错误时的自动重启。然后,将该 .service 文件复制到 /etc/systemd/system 目录中,并使用以下命令启动服务:

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

为了在系统启动时自动启动服务,请使用以下命令启用自动启动:

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

在 Windows 上,您可以使用 pm2-windows-service 包来将 PM2 作为 Windows 服务启动。详情请参见 pm2-windows-service

监控 PM2 进程

PM2 有很多内置命令来帮助您监控进程状态。以下是其中一些命令:

  • pm2 status:获取所有启动的应用程序的状态。
  • pm2 stop:停止所有应用程序。
  • pm2 restart:重启所有应用程序。
  • pm2 logs:在控制台上显示应用程序日志。
  • pm2 monit:显示所有应用程序的 CPU、内存和网络使用情况。

结论

使用 PM2 进行 Node.js 应用程序的部署相对简单,有助于提高您的应用程序的稳定性和可伸缩性。本文介绍了如何安装和使用 PM2,并将应用程序设置为自动启动。希望这篇文章可以帮助您更好地使用 PM2。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/672d8c58eedcc8a97c85473a