AWS ECS 的端口映射

Dus*_*Boy 8 amazon-ec2 amazon-web-services amazon-ecs

我是 ecr/ecs/ec2 的新手。我开始将我的应用程序部署到我购买的域。我的应用程序有一个前端和一个后端。我的前端在 localhost:3000 上运行,并在 localhost 5000 上调用其后端 api。本地计算机上的端口映射与在 aws 上创建任务定义时的端口映射相同吗?

在此输入图像描述

ban*_*kar 9

我希望对此有一个简单的是/否的答案。但没有。

ECS使用4种组网模式。awsvpc、网桥、主机和无。这里没有一个是不相关的,因为那里没有网络。

对于 awsvpc,容器获得自己的 ENI。这意味着您的容器将充当主机,并且您公开的端口将是您提供服务的端口。

对于桥接,您可以使用 docker 网络并动态使用临时端口来将容器端口映射到。如果您想使用同一容器/任务的多个副本,此模式是最好的。

对于主机,容器绕过 docker 网络并使用 EC2 ENI,如果您计划使用端口映射,则不允许在同一 EC2 实例上运行同一容器/任务的多个副本,从而限制您。

详细解释如下: https: //docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html