我正在使用 Terraform 创建 ECS 集群、任务定义和服务。
对于任务定义,这段代码如下所示:
resource "aws_ecs_task_definition" "postgres" {
container_definitions = ...
family = "Postgres"
requires_compatibilities = ["EC2"]
network_mode = "bridge"
volume {
name = "PreCreatedEBSVolume"
docker_volume_configuration {
scope = "task"
autoprovision = false
driver = "rexray/ebs"
}
}
}
我专门设置autoprovision
为false
确保不创建新卷。但是,当服务运行时,会创建一个 16GiB 的新卷(我假设这是默认大小)并使用它而不是使用“PreCreatedEBSVolume”。
我检查了docker volume ls
实例,果然,我看到了列出的 EBS 卷。如果我运行一个安装了这个卷的新实例,它会按预期安装。
有没有办法让 REX-Ray 使用现有的块存储?