[英]not able to deploy nodejs with angular app into azure web app using azure devops
我正在尝试在 azure DevOps 中为 MEAN 堆栈应用程序创建管道。 前端部分使用带有 angular 的 nodejs 构建,后端使用带有 express 的 nodejs 构建。
1) 使用 azure DevOps 将前端 nodejs 项目部署到基于 nodejs 堆栈构建的 azure Linux web 应用程序中后,在尝试通过 URL 访问应用程序时,我被重定向到默认节点页面而不是我的应用程序。 但是,当我在基于 asp.net 构建的 Windows Web 应用程序上使用相同的管道部署相同的应用程序时,我可以使用 URL 访问该应用程序。 日志还显示“部署成功并准备服务”,是否应该进行任何更改以访问部署在Linux web app中的应用程序?
2)如果我把前端和后端都部署在不同的web应用程序中,代码中相关的URL修改是否足够,或者我是否需要设置任何连接字符串来建立从前端到后端的连接。
链接到下面提供的构建管道 yaml 文件的屏幕截图: https : //i.stack.imgur.com/OuYfQ.png
您是第一次转载以上场景。 但是当我添加启动命令 `npx serve -s 时,我的 angular 应用程序成功显示。 请参考以下示例:
- task: AzureRmWebAppDeployment@4
displayName: deploy
inputs:
azureSubscription: 'mysubscription'
appType: webAppLinux
webappName: 'angularlevi'
deployToSlotOrASE: true
ResourceGroupName: mygroup
packageForLinux: dist/angularapp
StartupCommand: 'npx serve -s'
或者,您可以从 azure 门户上的应用服务添加启动命令。 然后单击保存-->刷新。 您的应用程序应该能够显示。
@Levi,感谢上述建议。 我使用您在“npx serve -s”上方给出的命令作为发布管道中的启动命令,它帮助我通过互联网部署和访问我的应用程序。 如果我不使用任何命令,它将路由到默认节点页面。
在 Linux 机器或 App 服务上使用以下命令作为启动
pm2 服务 /home/site/wwwroot --no-daemon --spa
wwwroot 应该有使用 ng build --prod 命令生成的所有文件
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.