Azure App Service的Terraform模板LinuxFxVersion具有无效值

py49o6xq  于 2023-06-07  发布在  Linux
关注(0)|答案(3)|浏览(170)

这是我的terraform模板的样子:

resource "azurerm_resource_group" "example" {
  name     = "myAppServiceRG"
  location = var.location
}

resource "azurerm_service_plan" "example" {
  name                = var.servicePlanName
  resource_group_name = azurerm_resource_group.example.name
  location            = azurerm_resource_group.example.location
  os_type             = "Linux"
  sku_name            = var.pricingTier
  worker_count        = var.nodesInWebFarm
}
resource "azurerm_linux_web_app" "example" {
  name                = var.appName
  resource_group_name = azurerm_resource_group.example.name
  location            = azurerm_service_plan.example.location
  service_plan_id     = azurerm_service_plan.example.id

  site_config {
    application_stack {
      docker_image     = var.dockerHubImage
      docker_image_tag = "latest"
    }
  }
}

和参数.tfvars文件:

location        = "West Europe"
servicePlanName = "someserviceplan"
nodesInWebFarm  = 2
pricingTier     = "P1v2"
appName         = "myuniquelinuxwebapplication"
dockerHubImage  = "DOCKER|mcr.microsoft.com/dotnet/samples:aspnetapp"

但是由于某些原因,当我尝试执行terraform apply -var-file .\parameters.tfvars时,我得到了这个错误:
错误:创建Linux Web应用程序:(站点名称“myuniquelinuxwebapplication”/资源组“myAppServiceRG”):web.AppsClient#CreateOrUpdate:发送请求失败:StatusCode=400 --原始错误:Code=“BadRequest”Message=“参数LinuxFxVersion的值无效。”详细信息=[{“Message”:“参数LinuxFxVersion的值无效。"},{“Code”:“BadRequest”},{“ErrorEntity”:{“Code”:“BadRequest”,“ExtendedCode”:“01007”,“Message”:“参数LinuxFxVersion的值无效。",“MessageTemplate”:“参数{0}的值无效。",“Parameters”:[“LinuxFxVersion”]}}]
有谁知道为什么,以及如何改变这一点?

92vpleto

92vpleto1#

听起来你的Linux服务计划和你的docker容器之间不匹配。
我认为将容器更改为Linux构建将修复它
完整的标签在此页上(向下滚动一点)https://hub.docker.com/_/microsoft-dotnet-samples

t3irkdon

t3irkdon2#

请从dockerHubImage中删除Docker部分,它应该可以工作。所以应该是这样的:

dockerHubImage = "mcr.microsoft.com/dotnet/samples:aspnetapp"
vmpqdwk3

vmpqdwk33#

对我来说,问题是包含Docker镜像的变量没有设置或设置为错误的值。非常误导性的错误。。

相关问题