在Ubuntu上如何使用PM2部署Node.js应用

时间:2019-05-19 01:25:52  来源:igfitidea点击:

PM2是针对Node.js应用程序的高级生产过程管理器。
在本教程中,我们将学习如何使用pm2工具在生产服务器上部署Node.js应用程序。
PM2监视应用程序及其内存和CPU使用情况。
同时,提供简单的命令来停止/启动/重新启动所有应用程序或单个应用程序。

步骤1 -安装Node.js

首先,你需要在我们的系统中通过nodejs官方网站提供node.js PPA。
我们还需要安装python软件属性包(如果还没有安装的话)。

sudo apt install python-software-properties
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -

添加了必需的PPA文件后,让我们安装Nodejs包。
NPM也将与node.js一起安装。
这个命令还将在系统上安装许多其他依赖包。

sudo apt install nodejs

步骤2 -安装PM2

现在,使用npm使用以下命令为Node.js安装进程管理器。
这将在系统上安装最新版本的pm2。

sudo npm install Hyman@theitroad -g

步骤3 -启动PM2应用程序

现在创建PM2配置文件。
对于本教程,我有两个Node.js应用程序要托管在生产服务器上。
源代码应用程序在/var/www/parse-apps/app1 和 /var/www/parse-apps/app2 目录下。

创建一个配置文件parse-apps.config.js。
我的两个应用程序都有index.js启动JavaScript文件来运行我的应用程序。

parse-apps.config.js:

module.exports = {
  apps : [{
    name        : "My App 1",
    script      : "index.js",
    watch       : true,
    merge_logs  : true,
    cwd         : "/var/www/parse-apps/app1/",
   },{
    name        : "My App 2",
    script      : "index.js",
    watch       : true,
    merge_logs  : true,
    cwd         : "/var/www/parse-apps/app2/",
  }]
}

现在使用以下命令启动pm2应用程序。
在下面的命令中,我们传递的配置文件名是parse-apps.config.js。
PM2将读取配置文件并启动所有应用程序并分配一个唯一的id。

pm2 start parse-apps.config.js

步骤4 -使用PM2管理进程

使用以下命令列出在PM2下注册的所有进程。
这还将显示应用程序的状态、进程id和其他有用的信息。

sudo pm2 list

要查看具体进程的详细信息,可以使用下面的命令,后面跟着id或进程应用程序名称。

sudo pm2 show 1

我们还可以实时监视所有进程的CPU和内存使用情况。

sudo pm2 monit