为什么我会收到错误"Container.name should not be null or empty"?



我们正在使用terraform导入ECS解决方案,由于某种原因,我无法通过此错误。

aws_ecs_task_definition.群集名称: 客户端异常: Container.name不应为空或空。09-二月-2017 23:35:1 状态代码:400

我相信这是从这个 json 文件中产生的,service-prod-server.json

#aws_ecs_task_definition
resource "aws_ecs_task_definition" "cluster-name" {
  family = "cluster-name"
  container_definitions = "${file("task-definitions/service-prod-server.json")}"
}

这是service-prod-server.json配置的顶部。我那里有名字。

[
  {
    "name": "containername",
    "memory": 7000,
    "image": "imagename",
    "disableNetworking": false,
    "readonlyRootFilesystem": false,

我也定义了这个配置。

#aws_ecs_container_definition
data "aws_ecs_container_definition" "cluster-name" {
  task_definition = "${aws_ecs_task_definition.cluster-name.id}"
  container_name = "containername"
}

让我知道你们的想法

对我来说

,我错误地标记了环境变量键:

{ "key": "myvariable", "value": "myvalue" }

而不是

{ "name": "myvariable", "value": "myvalue" }

不同之处在于我写了key而不是name,这破坏了整个容器定义,这给了我这个错误。

值得一提的是,在尝试将整个任务定义传递给 container_definitions 时,我在 Terraform 中遇到了同样的错误。请注意,container_definitions选项应仅设置为任务定义的容器定义部分(而不是整个内容(。

相关内容

最新更新