使用 PM2 将 Node.js 应用部署到生产环境的详细步骤

阅读时长 4 分钟读完

在前端开发中,Node.js 已成为不可或缺的一部分。在将 Node.js 应用部署到生产环境时,我们需要一种高效的工具来简化部署流程,减少出错可能,而 PM2 正是这样一种工具。本文将详细介绍如何使用 PM2 将 Node.js 应用部署到生产环境中。

准备工作

在开始编写 Node.js 应用之前,我们需要先安装 Node.js 和 PM2。可以从官网上下载最新版本的 Node.js(注意选择适合自己操作系统的版本),然后通过 npm 安装 PM2:

编写 Node.js 应用

下面我们以一个简单的 Node.js 应用为例,演示如何使用 PM2 将其部署到生产环境。

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

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

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

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

这是一个非常简单的 Node.js 应用,监听 3000 端口,返回一个文本字符串。

部署 Node.js 应用

在 Node.js 应用的目录下,使用以下命令启动应用:

这个命令会启动 Node.js 应用,并使用 PM2 来监控应用的运行情况。PM2 会创建一个应用进程,并为该进程分配一个唯一的 ID。

可以使用以下命令查看进程列表:

我们可以看到,PM2 会给应用进程分配一个唯一的 ID(0),并显示该进程的状态(运行中),CPU 和内存使用情况,以及日志文件的路径。

接下来,我们可以使用以下命令来停止或删除应用进程:

设置进程管理

PM2 可以根据需求自动管理进程的数量。以下命令将在后台运行两个应用进程:

如果我们希望 PM2 自动根据 CPU 核心数量来分配进程数量,可以使用以下命令:

可以使用以下命令来查看当前进程数量:

可以使用以下命令来设置进程数量:

这个命令会将进程数量设置为 3。如果希望 PM2 自动根据 CPU 核心数量来分配进程数量,可以使用以下命令:

设置自动重启

如果 Node.js 应用由于内存泄漏或其他原因而挂掉,我们希望 PM2 能够自动重启应用。以下命令将启用自动重启功能:

这个命令会启用自动重启功能,并监视应用目录下的文件变化。如果检测到文件变化,PM2 会自动重启应用。如果我们希望 PM2 忽略某些文件夹,可以使用 --ignore-watch 选项。

设置日志记录

PM2 会将应用日志输出到应用目录下的 .pm2/logs 文件夹中。以下命令将设置日志级别为 debug:

可以使用以下命令来查看日志文件:

这个命令会输出 my-app 应用的日志记录。如果希望 PM2 输出更详细的信息,可以使用以下命令:

总结

通过上述步骤,我们可以快速而安全地将 Node.js 应用部署到生产环境中。PM2 提供了自动化管理 Node.js 应用的功能,极大地提高了生产环境部署的效率,同时减少了出错的可能性。

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

纠错
反馈