使用 Azure DevOps 将 Azure Function(隔离过程)部署到 Azure 不起作用

Deploying Azure Function (isolated process) to Azure using Azure DevOps is not working

目前,Microsoft 引入了一种处理 azure 函数的新方法,称为隔离进程,这是 运行 .NET5 上的 Azure 函数的唯一方法。

我正在尝试通过 Azure DevOps 将已在本地计算机上正确 运行ning 的函数应用程序部署到 Azure Func 应用程序。部署成功但功能不可用

首先在部署任务中看不到.NET 5出现如图:

但我可以在此处的 link 中看到支持 .NET 5 作为预览版:

https://docs.microsoft.com/en-us/azure/azure-functions/functions-versions#languages

部署后,我可以看到这个错误:

但是我把配置改成了这样:

函数也显示了这个错误:

我还可以从这里看到该函数在 .NET 5 上被视为 运行ning:

所以不确定如何正确部署它。我知道隔离进程函数只需要 azure 函数工具 + 运行ning 命令行,所以不确定如何部署它,而且微软也没有任何关于如何部署它的教程或文档?

我找到了解决方案。问题是 Microsoft 运行 Linux 计划中的独立流程功能不受支持。

另外如下所示,您还不能从 Azure 门户创建独立的流程函数 (17/03/2021),所以我必须自己创建它,如下所示:

az group create --name {resoucrce-group} --location {location}

然后

az storage account create --name {storage-name} --location {location} --resource-group {resoucrce-group} --sku Standard_LRS

然后创建函数:

az functionapp create --resource-group {resoucrce-group} --consumption-plan-location {location} --runtime dotnet-isolated --runtime-version 5.0 --functions-version 3 --name {name} --storage-account {storage-name}

现在,您可以从 DevOps 门户在 windows 上部署一个普通的应用程序功能,我们开始吧。

创建 Azure Function App 后,您可以在配置面板中更改 FUNCTIONS_WORKER_RUNTIME 并将其设置为 dotnet-isolated