如何使用Angular CLI和PM2运行Angular应用程序

Angular CLI 是 Angular 框架的命令行界面,用于在开发过程中创建、构建和运行您的应用程序。

它旨在在开发服务器上构建和测试 Angular 项目。但是,如果您想在生产环境中永久运行/保持应用程序的活动状态,您需要像 Node.js 进程管理器 这样的工具,比如 PM2

PM2 是一个受欢迎的、先进的、功能丰富的 Node.js 应用程序生产进程管理器,带有内置负载均衡器。

它的功能集包括应用程序监控、高效管理微服务/进程、运行应用程序集群模式,以及应用程序的优雅重启和关闭。此外,它支持简单管理应用程序日志等等。

在本文中,我们将向您展示如何使用 Angular CLIPM2 Node.js 进程管理器运行 Angular 应用程序。这使您可以在开发过程中持续运行您的应用程序。

要求

您的服务器必须安装以下软件包才能继续:

注意:如果您的 Linux 系统已经安装了 Node.jsNPM,请跳至 第二步

第一步:在 Linux 中安装 Node.js

要安装最新版本的 Node.js,首先,按照下面的步骤在系统上添加 NodeSource 仓库 并安装软件包。不要忘记根据您在 Linux 发行版上要安装的 Node.js 版本运行正确的命令。

在 Ubuntu 上安装 Node.js

------------- For Node.js v19.x ------------- 
$ curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v18.x -------------
$ curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v16.x -------------
$ curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v14.x -------------
$ curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash - &&\
$ sudo apt-get install -y nodejs

在 Debian 上安装 Node.js

------------- For Node.js v19.x ------------- 
$ curl -fsSL https://deb.nodesource.com/setup_19.x | bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v18.x ------------- 
$ curl -fsSL https://deb.nodesource.com/setup_18.x | bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v16.x ------------- 
$ curl -fsSL https://deb.nodesource.com/setup_16.x | bash - &&\
$ sudo apt-get install -y nodejs

------------- For Node.js v14.x ------------- 
$ curl -fsSL https://deb.nodesource.com/setup_14.x | bash - &&\
$ sudo apt-get install -y nodejs

在基于 RHEL 的发行版上安装 Node.js

------------- For Node.js v19.x ------------- 
$ curl -fsSL https://rpm.nodesource.com/setup_19.x | sudo bash -
$ sudo yum install -y nodejs

------------- For Node.js v18.x ------------- 
$ curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash -
$ sudo yum install -y nodejs

------------- For Node.js v16.x ------------- 
$ curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
$ sudo yum install -y nodejs

------------- For Node.js v14.x ------------- 
$ curl -fsSL https://rpm.nodesource.com/setup_14.x | sudo bash -
$ sudo yum install -y nodejs

此外,还要在系统上安装开发工具,以便您可以从 NPM 编译和安装本机插件。

$ sudo apt install build-essential  [On Debian/Ubuntu]
# yum install gcc-c++ make          [On CentOS/RHEL]
# dnf install gcc-c++ make          [On Fedora]

安装了 Node.jsNPM 后,您可以使用以下命令检查它们的版本。

$ node -v
$ npm -v
Check Node.js and NPM Version

第二步:安装 Angular CLI 和 PM2

安装Angular CLIPM2使用npm软件包管理器如下所示。在以下命令中,-g选项意味着全局安装包 – 所有系统用户可用。

$ sudo npm install -g @angular/cli        #install Angular CLI
$ sudo npm install -g pm2                 #install PM2

步骤 3:使用 Angular CLI 创建 Angular 项目

现在进入您服务器的webroot目录,然后使用 Angular CLI 创建、构建和提供您的 Angular 应用程序(称为sysmon-app,将其替换为您的应用程序名称)

$ cd /srv/www/htdocs/
$ sudo ng new sysmon-app        #follow the prompts
Create New Angular App

接下来,进入刚创建的应用程序(完整路径为/srv/www/htdocs/sysmon-app)目录,并按如下所示提供应用程序。

$ cd sysmon-app
$ sudo ng serve
Serve Angular App Using Angular CLI

ng serve 命令的输出中,您可以看到 Angular 应用程序没有在后台运行,您无法再访问命令提示符。因此,在其运行时您无法执行任何其他命令。

因此,您需要一个进程管理器来控制和管理应用程序:连续运行它(永远)并且还可以在系统启动时自动启动,如下一节所述。

在进入下一节之前,通过按[Ctl + C]终止进程以释放命令提示符。

Terminate Running Angular App

步骤 4:使用 PM2 永久运行 Angular 项目

为了让您的新应用程序在后台运行,释放命令提示符,使用PM2提供它,如下所示。PM2还帮助常见的系统管理任务,如故障时重新启动、停止和重新加载配置而无需停机,等等。

$ pm2 start "ng serve" --name sysmon-app
Run Angular App Forever

下一步,要访问您的应用程序的 Web 界面,请打开浏览器,并使用以下截图中显示的地址导航http://localhost:4200

Access Sysmon Angular App from Browser

在本指南中,我们展示了如何使用Angular CLIPM2进程管理器运行 Angular 应用程序。如果您有任何额外的想法要分享或问题,请通过下面的反馈表与我们联系。

Source:
https://www.tecmint.com/create-and-run-angular-apps-using-angular-cli-and-pm2/