Azure Function App 部署失败并显示“Kudu”

问题描述 投票:0回答:1

通过 Azure DevOps 部署 Azure Function App 时。我们收到以下错误:

Starting: AzureFunctionApp
==============================================================================
Task         : Azure Functions Deploy
Description  : Update a function app with .NET, Python, JavaScript, PowerShell, Java based web applications
Version      : 2.225.1
Author       : Microsoft Corporation
Help         : https://aka.ms/azurefunctiontroubleshooting
==============================================================================
Got service connection details for Azure App Service:'***'
Updating App Service Application settings. Data: {"WEBSITES_ENABLE_APP_SERVICE_STORAGE":"true","WEBSITE_RUN_FROM_PACKAGE":"1"}
App Service Application settings are already present.
Package deployment using ZIP Deploy initiated.
##[error]Failed to deploy web package to App Service.
##[warning]Can't find loc string for key: KuduStackTraceURL

仅在部署约 45 分钟后超时后才会出现该错误。其他功能都部署得很好,就是这个好像有问题。

azure azure-functions
1个回答
0
投票

我看到了很多关于这个特定错误的答案,但没有一个真正击中要害。

导致我走上这条路的是帐户的“存储”可能是错误的。因此,首先要检查的是

WEBSITE_CONTENTAZUREFILECONNECTIONSTRING
环境变量的设置。这应该是指向存储帐户的指针。

如果此连接字符串错误或损坏,请修复此问题。

接下来,如果这是 KeyVault 参考(或者即使不是),您可能有一个设置

WEBSITE_SKIP_CONTENTSHARE_VALIDATION: '1'

设置此选项后,将跳过 Azure 存储中“FileShare”的自动创建。当您使用 KeyVault 引用时,这是必需的,但本质上打开此功能后,它不会自动创建函数应用程序所需的文件夹。

如果设置为 1,则需要手动创建文件共享。

就我而言,使用二头肌(尽管您可以手动创建)

resource fileServices 'Microsoft.Storage/storageAccounts/fileServices/shares@2023-01-01'= {
  name: '${storageAccountName}/default/${functionAppName}'
}

如果您不确定此文件共享的创建位置或命名,请通过门户针对同一存储帐户创建新的 azure 函数,并检查它自动创建的文件夹。

手动创建此文件共享后,我可以部署我的函数应用程序。

© www.soinside.com 2019 - 2024. All rights reserved.