You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Terraform设置Azure Function的平台位数?

解决Azure Function Terraform部署默认32位的问题

要将Azure Function切换为64位运行环境,核心配置需在App Service Plan资源中完成——因为Function App的运行位数由其关联的App Service Plan决定,具体操作如下:

1. 修改App Service Plan配置

在azurerm_app_service_plan资源中添加reserved = true属性,此配置用于启用Windows平台下的64位运行环境:

resource "azurerm_app_service_plan" "plan" {
  count               = length(var.resource_groups)
  name                = "${var.name}-asp${count.index + 1}"
  location            = var.resource_groups[count.index].location
  resource_group_name = var.resource_groups[count.index].name
  kind                = "FunctionApp"
  # 启用64位运行环境
  reserved            = true

  sku {
    tier = var.app_service_plan_tier
    size = var.app_service_plan_size
  }

  tags = var.tags
}

2. 验证Function App应用设置

确保app_settings中没有强制指定32位的配置,同时根据实际运行时需求补充必要配置,示例如下:

locals {
  app_settings = {
    FUNCTIONS_WORKER_RUNTIME = "dotnet" # 替换为你的实际运行时,如node/python等
    WEBSITE_RUN_FROM_PACKAGE = "1"
    # 其他自定义配置项
  }
}

补充说明

  • reserved = true是Windows平台下启用64位Function App的关键配置,Terraform默认该属性为false,对应32位环境。
  • 若使用Linux平台的Function App,无需设置reserved属性——Linux环境默认支持64位,只需确保App Service Plan的SKU符合要求即可。

内容的提问来源于stack exchange,提问作者Brendan Murphy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 22:31:14