将Node.js服务器和angular应用程序部署到Azure Web服务

问题描述

我有一个Angular应用程序(9.1.4)和一个node.js服务器应用程序(12.14.1)。我的文件当前配置如下:

MyApp
- package.json
- angular.json
- server
  - server.js
- src
  - app
  - asserts
  - environments
  - angular html/css/ts
- node_modules

为了在本地破坏他,我必须在一个cmd提示符下运行node server.js,在另一个cmd提示符下运行ng serve。我希望将该项目部署到Azure,但是不确定如何设置它以便可以在单个应用程序服务中运行。所以:

  1. 如何通过本地同一命令运行服务器(node.js)和应用程序(角度)?
  2. 一旦我在本地进行了此设置,需要更改什么(如果有的话)才能在Azure中运行?

解决方法

首先,项目,前端角度项目和后端节点服务的启动端口是否在同一配置文件中?

  1. 如果是,则可以通过修改package.json文件中的脚本来execute multiple commands

  2. 因为azure Web应用程序仅支持44380端口。如果两个项目的端口配置不同,则可能在本地正常运行。

例如,ng项目为7001,服务器项目为7002,并根据process.env.PORT参数部署到azure Web应用程序,它将导致端口冲突和该项目无法启动。

因此,如果是第二种情况,如何处理:

您可以使用虚拟应用程序分别部署应用程序。有关更多详细信息,您可以see my answer in another post

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...