我正在尝试使用新的 ECS 控制台 ( https://ap-south-1.console.aws.amazon.com/ecs/v2/task-definitions?region=ap-south-1 ) 创建一个新的基于 EC2 的 ECS 任务定义。但在端口映射部分(这是步骤 1 的一部分),我只看到设置容器端口的选项。我希望将其用于 nginx 容器,因此容器端口 80 就可以了,但我没有看到任何更改主机端口的选项(例如更改为 8080)。
当我进入下一步时,我看到 Fargate 被选为默认应用程序环境。我将其更改为仅 EC2 并创建定义。它还创建主机端口为 80 的定义。如果我尝试创建新版本,我会看到与上面相同的选项,并且无法更改主机端口。
这只是新控制台设计中没有实现的东西吗?或者我在这里错过了什么?正如我在经典 UI 中看到更改主机端口的正确选项。 此外,使用这个新的 UI,我也无法更改网络等内容(默认为 awsvpc)。看起来这个 UI 完全适合 Fargate 类型的应用程序,因为我谈论的所有这些选项都不需要为 Fargate 配置(据我所知)。
谢谢!
最佳答案
遗憾的是,您无法设置主机端口,因为新的 ECS V2 控制台目前仅支持 awsvpc
网络模式。
在控制台中,如果我们单击Info
链接:
The new Amazon ECS console experience currently only supports the
awsvpc
network mode, which provides the task with an elastic network interface (ENI).
对于 awsvpc
网络模式,您只能设置容器端口,因为这将通过 ENI 暴露给您的 VPC。您需要bridge
模式才能配置容器和主机端口。
与旧版本相比,V2 控制台目前缺乏功能。您会想坚持使用旧的。
关于amazon-web-services - AWS : Changing host port in EC2 based ECS task definition using new ECS Console,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70642259/