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

Terraform配置NSG规则时locals块报错:块不允许+参数名禁引号

Terraform locals映射声明错误修复

你的代码存在两处语法错误导致报错,具体修复方案如下:

错误原因及对应修复

  • locals变量声明格式错误
    原代码中App_Inbound_Layer7Port_Map{采用了块语法,但Terraform的locals变量需要通过=赋值,正确写法应为App_Inbound_Layer7Port_Map = { ... }。
  • 映射内键值对语法错误
    Terraform的映射(map)内部键值对必须用=连接,不能使用冒号:,键名的引号可保留(适用于字符串类型键),但语法需统一。

修正后的完整代码

#Web tier subnet NSG rule
##local block for security rules
locals {
  App_Inbound_Layer7Port_Map = {
    "990"  = "80"
    "1000" = "443"
  }
}

修正后即可通过for_each = local.App_Inbound_Layer7Port_Map遍历该映射,结合each.key和each.value批量生成NSG规则。

内容的提问来源于stack exchange,提问作者budhaditya baneerjee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 17:39:24