无法在 Azure 网站上完成 Kudu 部署

时间:2021-04-05 03:25:16

标签: azure kudu azure-webapps

我已按照此处的指南设置部署:

https://docs.microsoft.com/en-us/azure/app-service/deploy-continuous-deployment?tabs=github

首次设置时部署工作成功。今天,我对代码进行了更改以进行重新部署,但它停止工作。

我收到以下错误:

Command: "D:\home\site\deployments\tools\deploy.cmd"
Handling ASP.NET Core Web Application deployment with MSBuild16.7.0.
Access is denied.
Failed exitCode=1, command="D:\Program Files (x86)\MSBuilds\16.8.3\MSBuild\Current\Bin\MSBuild.exe" /restore "D:\home\site\repository\myproject\myproject.Web.csproj" /p:DeployOnBuild=true /p:configuration=Release /p:publishurl="D:\local\Temp\8d8f7e05bbfa782"
An error has occurred during web site deployment.
Access is denied.\r\nD:\Program Files (x86)\SiteExtensions\Kudu\92.30310.5111\bin\Scripts\starter.cmd "D:\home\site\deployments\tools\deploy.cmd"

然后我连接到 Kudu 调试门户并尝试自己运行命令。它失败了。然后我尝试导航到 D:\Program Files (x86)\MSBuilds\16.8.3\MSBuild\Current\Bin

缺少那个版本的 MSBuild。目前唯一的版本是:

03/27/2021  09:33 AM    <DIR>          MSBuild-15.3.409.57025
03/27/2021  09:33 AM    <DIR>          MSBuild-15.9.21.664
03/27/2021  09:33 AM    <DIR>          MSBuild-16.4

如何安装 16.8.3?

1 个答案:

答案 0 :(得分:0)

Azure Web 应用在沙盒环境中运行,D:/home 下文件夹的内容具有读写权限。所有其他文件夹都具有只读权限。

Azure Web 应用具有支持多种语言部署的 Web 环境,因此无需安装 16.8.3MSBuild 版本。

对于您的问题,我只能提供以下故障排除步骤:

  1. 检查您的项目是什么版本。 Net 框架、.net core 2.2 或 3.1、.net5 ?

  2. 检查您的 azure 网络应用程序的 Stack settings 是否与项目一致。

    enter image description here

  3. (可选步骤)将 Stack 设置设置为 .Net5,并修改 github 中的任何文件,例如新文件。检查部署结果。

  4. 下载你的项目并在本地运行,看是否能正常运行。

  5. 创建一个测试槽,重新部署看能否正常部署,设置流量暂时不影响你的web运行。看看问题会不会复发。如果问题仍然存在,请联系 Microsoft。

相关帖子:

1. Error - Access is denied - deployment to Azure App Services