Terraform配置aws_ecs_task_definition时requires_compatibilities报错如何解决
问题原因
requires_compatibilities参数要求传入字符串集合类型,你当前配置中传入的是单个字符串"FARGATE",类型不匹配触发校验报错。
解决方案
把参数值调整为列表格式即可,根据实际需求选择对应写法:
- 仅需要FARGATE启动类型兼容:
requires_compatibilities = ["FARGATE"] - 需要同时兼容FARGATE和EC2启动类型:
requires_compatibilities = ["FARGATE", "EC2"]
修改后完整配置参考
resource "aws_ecs_task_definition" "task_definition" { family = join("-", [local.cluster_values.backend_name, local.cluster_values.environment, local.cluster_values.random_id]) network_mode = "awsvpc" requires_compatibilities = ["FARGATE"] cpu = 256 memory = 512 container_definitions = data.template_file.task_definition_template.rendered task_role_arn = local.cluster_values.task_role }
修改完成后重新执行terraform validate即可通过校验。
内容的提问来源于stack exchange,提问作者RELiABLE
相关产品推荐
相关产品推荐

