gpt4 book ai didi

amazon-web-services - 如何使用元数据端点或 java sdk 获取我的 FARGATE ECS 任务的公共(public) IP?

转载 作者:行者123 更新时间:2023-12-04 08:14:52 26 4
gpt4 key购买 nike

我想在容器启动后获取我的 Fargate ECS 任务的公共(public) IP。
我在请求时得到 IPv4Addresses http://169.254.170.2/v2/metadata/但我没有得到任务的公共(public) IP。

当我使用 RunTaskResult 的 runTask(request) 方法时,我再次没有从 RunTaskResult 获得公共(public) IP。

有没有办法获得我的 Fargate 任务的公共(public) IP,例如 http://169.254.169.254/latest/meta-data/public-hostname (对于 EC2)?

最佳答案

我用 DescribeNetworkInterfacesRequest 解决了我的问题。我通过 获得了容器的私有(private) IP。 curl http://169.254.170.2/v2/metadata/ 然后运行此代码。

    AmazonEC2 ec2AsyncClient= AmazonEC2ClientBuilder.standard().withCredentials(new 
AWSStaticCredentialsProvider(credentials)).build();

DescribeNetworkInterfacesRequest request = new DescribeNetworkInterfacesRequest();
request.withFilters(new Filter().withName("private-ip-address").withValues("my-container-private-Ip"));
DescribeNetworkInterfacesResult result = ec2AsyncClient.describeNetworkInterfaces(request);
String publicIP = result.getNetworkInterfaces().get(0).getAssociation().getPublicDnsName();

关于amazon-web-services - 如何使用元数据端点或 java sdk 获取我的 FARGATE ECS 任务的公共(public) IP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50215187/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com