我有两个容器,它们暴露同一个端口。我想在同一个任务中运行它们,因为它们是同一系统的一部分。但我不能用Fargate做这个,因为没有端口映射,主机端口应该与awsvpc网络模式的容器端口相同(仅由Fargate支持)。
这是Docker的一个基本功能,它似乎不受Fargate的支持。真的没有办法做到这一点,或者我错过了什么?
答案 0 :(得分:3)
将应用程序负载均衡器用于您的服务,并在targat组中设置自定义端口,并且主机端口应设置为与容器端口相同。 这是我们经过测试的解决方案。
答案 1 :(得分:0)
您必须切换到基于ec2的ecs而不是fargate。此外,您可以在不同的端口上运行,并使用fargate中的服务发现功能进行相互通信。可能需要更改代码。