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

PM2是Node.js应用程序的高级生产流程管理器。在本教程中,您将了解如何使用pm2工具在生产服务器上部署Node.js应用程序。 PM2可帮助您监视应用程序,其内存和CPU使用情况。还提供简单的命令停止/启动/重新启动所有应用程序或单个应用程序。步骤1:安装Node.js首先...

PM2是Node.js应用程序的高级生产流程管理器。在本教程中,您将了解如何使用pm2工具在生产服务器上部署Node.js应用程序。 PM2可帮助您监视应用程序,其内存和CPU使用情况。还提供简单的命令停止/启动/重新启动所有应用程序或单个应用程序。

步骤1:安装Node.js

首先需要node.js在我们的系统中提供ppa,由nodejs官网提供。如果没有安装,我们还需要安装python-software-properties包。
$ sudo apt-get install python-software-properties
$ curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
添加所需的PPA文件后,让我们安装Nodejs包。 NPM也将安装node.js。此命令还将在系统上安装许多其他相关软件包。
$ sudo apt-get install nodejs

步骤2:安装PM2

现在使用npm使用以下命令安装Node.js的进程管理器。这将在您的系统上安装最新版本的pm2。
$ sudo npm install [email protected] -g

步骤3:使用PM2启动应用程序

现在创建PM2配置文件。对于本教程,我有两个Node.js应用程序在生产服务器上托管。源代码应用程序位于/ var / www / parse-apps / app1和/ var / www / parse-apps / app2目录下。创建具有以下内容的配置文件parse-apps.config.js。我的两个应用程序都有index.js启动JavaScript文件来运行我的应用程序。
module.exports = {
  apps : [{
    name        : "My App 1",
    script      : "index.js",
    watch       : true,
    merge_logs  : true,
    cwd         : "/var/www/parse-apps/app1/",
   },{
    name        : "My App 1",
    script      : "index.js",
    watch       : true,
    merge_logs  : true,
    cwd         : "/var/www/parse-apps/app2/",
  }]
}
现在使用以下命令用pm2启动应用程序。在下面的命令中,我们传递parse-apps.config.js配置文件名。 PM2将读取配置文件并启动所有应用程序并分配一个uniq id。
$ pm2 start parse-apps.config.js

步骤4:使用PM2管理进程

使用以下命令列出在PM2下注册的所有进程。这也将显示应用程序的状态,进程ID和其他有用的信息。
$ sudo pm2 list
要查看特定过程的更多详细信息,可以使用以下命令,后跟id或过程应用程序名称。
$ sudo pm2 show 1
您还可以实时监视所有进程cpu和内存使用。
$ sudo pm2 monit