【发布时间】:2021-11-09 04:53:26
【问题描述】:
我正在试验 AWS ECS。我正在尝试找到允许我的容器相互通信的最佳实践。
我发现的最简单的方法是使用应用程序负载平衡器。这可行,但我必须将 ALB 的 DNS 主机作为环境变量传递到我的任务定义/容器中。
这被认为是最佳做法还是有更好的方法?
【问题讨论】:
-
你尝试过服务发现吗......这是ECS可用的最灵活的选项
-
我确信我也可以做到这一点,但我仍然会有同样的问题;我是否需要将其他服务名称作为环境变量传递到任务定义中?
-
这将是最好的方法。如果您需要服务可用的主机名,尤其是在使用 Fargate 时。您可以尝试的另一个概念是边车容器。我们使用边车容器通过 Fargate 在容器之间共享数据...
-
将依赖项的主机名或 URL 作为环境变量传递可能是最佳实践。您可以将相同的基本设置用于本地开发、本地 Docker Compose 或 Kubernetes,而无需更改代码或映像。
标签: amazon-web-services docker amazon-ecs