无法使用高级服务计划部署 Azure Functions
Unable to deploy Azure Function with Premium Service Plan
当我尝试使用以下命令创建 FunctionApp 高级计划时:
# Create a Resource Group
az group create \
--name $rg_name \
--location $az_loc
# Create a Function App Storage Account
az storage account create \
--name $fa_storage_name \
--resource-group $rg_name \
--location $az_loc \
--sku Standard_LRS
# Create a Premium plan
az functionapp plan create \
--name $fap_name \
--resource-group $rg_name \
--location $az_loc \
--sku P2v2
我收到一个错误:
The requested app service plan cannot be created in the current
resource group because it is hosting Linux apps. Please choose a
different resource group or create a new one.
我也尝试了 sku EP2
结果相同。很难在文档 (!) 中找到 SKU。有谁知道哪个 sku 与 Linux Azure Functions 一起工作以及我在这里可能遗漏了什么?
这是常见错误。
解决办法是新建一个Resourse Group,把函数app放进去
问题来自于基于windows和基于linux的azure函数计划之间的冲突。
创建一个新的资源组是唯一的方法,并且在开发中注意根据linux和windows分离功能。
这是最终对我有用的东西。注意 az functionapp plan create
中的 --is-linux true
标志和 az functionapp create
中的 --plan
标志:
# Create a Premium plan
az functionapp plan create \
--name $fap_name \
--is-linux true \
--resource-group $rg_name \
--location $az_loc \
--sku EP2
# Create Function App (container for Azure Function)
#--consumption-plan-location $az_loc \
az functionapp create \
--name $fa_name \
--resource-group $rg_name \
--storage-account $fa_storage_name \
--plan $fap_name \
--os-type Linux \
--runtime python \
--runtime-version 3.7 \
--subscription $az_sub \
--functions-version 2
目前的限制是 Windows 和 Linux 应用程序不能存在于同一资源组中。
https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro#limitations
因此,它在部署 Windows 资源时失败,但在 --is-linux 设置为 true
时有效
当我尝试使用以下命令创建 FunctionApp 高级计划时:
# Create a Resource Group
az group create \
--name $rg_name \
--location $az_loc
# Create a Function App Storage Account
az storage account create \
--name $fa_storage_name \
--resource-group $rg_name \
--location $az_loc \
--sku Standard_LRS
# Create a Premium plan
az functionapp plan create \
--name $fap_name \
--resource-group $rg_name \
--location $az_loc \
--sku P2v2
我收到一个错误:
The requested app service plan cannot be created in the current resource group because it is hosting Linux apps. Please choose a different resource group or create a new one.
我也尝试了 sku EP2
结果相同。很难在文档 (!) 中找到 SKU。有谁知道哪个 sku 与 Linux Azure Functions 一起工作以及我在这里可能遗漏了什么?
这是常见错误。
解决办法是新建一个Resourse Group,把函数app放进去
问题来自于基于windows和基于linux的azure函数计划之间的冲突。
创建一个新的资源组是唯一的方法,并且在开发中注意根据linux和windows分离功能。
这是最终对我有用的东西。注意 az functionapp plan create
中的 --is-linux true
标志和 az functionapp create
中的 --plan
标志:
# Create a Premium plan
az functionapp plan create \
--name $fap_name \
--is-linux true \
--resource-group $rg_name \
--location $az_loc \
--sku EP2
# Create Function App (container for Azure Function)
#--consumption-plan-location $az_loc \
az functionapp create \
--name $fa_name \
--resource-group $rg_name \
--storage-account $fa_storage_name \
--plan $fap_name \
--os-type Linux \
--runtime python \
--runtime-version 3.7 \
--subscription $az_sub \
--functions-version 2
目前的限制是 Windows 和 Linux 应用程序不能存在于同一资源组中。
https://docs.microsoft.com/en-us/azure/app-service/containers/app-service-linux-intro#limitations
因此,它在部署 Windows 资源时失败,但在 --is-linux 设置为 true
时有效