【问题标题】:How can I expose both TCP and UDP on a single port in a AWS EC2 Task?如何在 AWS EC2 任务的单个端口上同时公开 TCP 和 UDP?
【发布时间】:2022-01-13 03:46:11
【问题描述】:

我在我的 AWS Fargate AWS::ECS::TaskDefinition 上遇到端口映射问题。容器内的应用程序在单个特定端口上侦听 TCP 和 UDP 流量。然而,AWS 文档指出:

您不能为多个协议公开相同的容器端口。如果尝试这样做,将返回错误。

对于在单个端口上同时侦听 TCP 和 UDP 流量的服务,是否有推荐的方法来解决此限制? (除了直接在 EC2 实例上运行)。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-ecs aws-fargate


    【解决方案1】:

    是的,这是不可能的,我会检查是否有办法在应用程序级别公开两个不同的端口。

    https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinitions-portmappings.html

    【讨论】:

    • 我不确定我是否遵循,该协议是可选的,因为它只是默认只接受 TCP 连接。
    • 你是对的,我已经更新了我的答案以避免误导他人
    【解决方案2】:

    从 2020 年 6 月起,您现在可以将 TCP 和 UDP 流量映射到 ECS 中的单个端口。 documentation 一直是 updated 以删除有关将同一端口暴露给多个协议的警告。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-13
      • 2018-12-29
      • 1970-01-01
      • 1970-01-01
      • 2019-11-26
      • 2020-08-09
      • 2018-07-20
      • 1970-01-01
      相关资源
      最近更新 更多