在具有 Node 14 运行时的 Azure App 服务上找不到 pm2

pm2 not found on Azure App service with Node 14 runtime

我想要实现的是使用 Linux OS 将 Angular 9 应用程序部署到 Azure App 服务(Windows 不适合我,因为 Linux 更便宜) 我用节点 14 运行 时间创建了 Linux 网络应用程序。 部署我的应用程序后,我会看到 Azure 默认网页。我试图按照描述

解决该问题

我在 Linux 使用 Node 14 的网络应用程序上执行的步骤 运行时间:

  1. 我加了这个

    pm2 服务 /home/site/wwwroot --no-daemon --spa

到AppService->配置->常规设置->启动命令

  1. 已保存配置并重新启动 App Service 但是出现 pm2 not found 错误。

  2. 已使用 ssh 连接到 Web 应用程序并 运行

    npm 安装 pm2 -g

  3. 重新启动应用服务但仍然找不到 pm2。

问题是如何使用节点 14 在 Linux 应用程序服务上托管 Angular 9?我应该修复找不到 pm2 还是可以使用其他方法(但仍然使用 Linux OS)来解决这个问题?

最新

如果不在意release方式,建议在本地执行ng build,然后将<your project name>文件夹中的所有文件直接拖放到wwwroot,或者使用FTP 上传。然后修改启动cmd为npx serve -s,也可以。

本地文件。

Azure 上的 wwwroot 中的文件。

上一个

经过测试,我认为这应该是一个bug。如果您必须使用 node 14LTS,我建议您在门户网站上提出支持票以寻求帮助。

重复出现的问题:

  1. 创建一个 linux 节点 14LTS 网络应用。

  2. 创建ng9项目,使用vscode部署成功。打开网站并显示默认页面。

  3. pm2 serve /home/site/wwwroot --no-daemon --spa pm2 serve /home/site/wwwroot/dist/<your project name> --no-daemon --spa 添加启动cmd,都失败了。

尝试求解:

  1. 我在Stack settings中改成Major version,项目运行正常