【发布时间】:2020-11-06 19:53:54
【问题描述】:
我正在使用 ECS 运行一些容器,我需要将一个包含一些配置的目录加载到其中一个容器中。使用 docker compose,我可以执行以下操作将目录从我的主机安装到容器中。
go-1:
image: link to my ecr repo here
command: run -c /app/node/
volumes:
- ./go/nodes/node_0:/app/node
我想用 Terraform 做一些类似的事情,并将 nodes_0 目录从我的主机上传到我的容器中,我目前的方法是像这样使用文件配置器:
resource "aws_ecs_task_definition" "app" {
family = var.app_task_family
execution_role_arn = aws_iam_role.ecs_task_execution_role.arn
network_mode = "awsvpc"
requires_compatibilities = [
"FARGATE",
]
cpu = var.fargate_cpu
memory = var.fargate_memory
container_definitions = data.template_file.app.rendered
provisioner "file" {
source = "../go/nodes/node_0"
destination = "/app/node"
}
}
但是,当我运行 Terraform 应用时,这给了我以下错误:
Error: timeout - last error: dial tcp :22: connect: connection refused
我的 ECS 集群位于私有子网中,所以我认为这可能是问题所在。
有没有更好的方法将文件夹上传到我在 ECS 上运行的容器中?
【问题讨论】:
标签: amazon-web-services terraform amazon-ecs