首页 > 解决方案 > 通过 Azure DevOps 将多个应用程序部署到同一个 Azure Web 应用程序

问题描述

我有两个应用程序,后端和前端,托管在同一个 Azure Web 应用程序上(os : windows)

实际上,我通过 FTP/S 部署这两个 artficats。

我使用wwwroot folder到前端和wwwroot folder后端的子文件夹

我会使用 Azure Devops 创建一个 Azure Release,将这两个应用程序部署到我的 Web 应用程序中。

我不能为后端和前端使用两个应用程序服务。

部署的最佳方法是什么?并且可以将 Azure App 服务中的子文件夹目标指定到 Azure 版本中吗?

问候

标签: azureazure-devopsrelease

解决方案


使用部署任务s在 azure 发布管道中指定要部署到的子文件夹是不可能的。默认情况下,工件将部署到 wwwroot 文件夹。

但是,您可以在发布管道中使用复制文件任务将后端工件复制到位于前端工件文件夹中的子文件夹中。然后部署前端工件文件夹,该文件夹在其子文件夹中包含后端工件。见下文:

在此处输入图像描述

您还可以在azure powershell 任务中运行Kudu rest api以部署到 azure Web 应用服务。

您可以先使用命令 api在 wwwroot 中创建一个子文件夹。

{
 "command" = 'md subfolder',
 "dir"='D:\home\site\wwwroot'
}

然后,您可以使用zip deploy api将后端工件部署到子文件夹

$apiUrl = "https://{sitename}.scm.azurewebsites.net/api/zip/site/wwwroot/subfolder"

请查看此博客以获取更多信息。请参阅此线程,例如使用 azure powershell 任务调用 kudu rest api


推荐阅读