AWS Elastic Beanstalk - 如何通过 CLI 获取 URL

Val*_*hah 2 amazon-web-services amazon-elastic-beanstalk

我对 AWS 还很陌生,我写了一个脚本来创建一个 ElasticBeanstalk 服务器并将代码部署到它,它工作正常

我可以使用以下方法获取 IP 地址和实例 ID

aws ec2 describe-instances
Run Code Online (Sandbox Code Playgroud)

我知道一个典型的 HTTP URL 看起来像这样

http://(cname-prefix).(region).elasticbeanstalk.com
Run Code Online (Sandbox Code Playgroud)

我用它来“生成”脚本中的 URL

但我想检查是否可以使用 CLI 获取 URL

Tom*_*ijs 5

AWS CLI 有一个用于此的命令,它描述了弹性 beanstalk 环境,结果值之一是端点 URL

对于负载平衡的自动缩放环境,它将 URL 返回到 LoadBalancer。对于单实例环境,返回实例的 IP 地址。

查看文档

aws elasticbeanstalk describe-environments --environment-names my-env

输出如下所示:

{
"Environments": [
    {
        "ApplicationName": "my-app",
        "EnvironmentName": "my-env",
        "VersionLabel": "7f58-stage-150812_025409",
        "Status": "Ready",
        "EnvironmentId": "e-rpqsewtp2j",
        "EndpointURL": "awseb-e-w-AWSEBLoa-1483140XB0Q4L-109QXY8121.us-west-2.elb.amazonaws.com",
        "SolutionStackName": "64bit Amazon Linux 2015.03 v2.0.0 running Tomcat 8 Java 8",
        "CNAME": "my-env.elasticbeanstalk.com",
        "Health": "Green",
        "AbortableOperationInProgress": false,
        "Tier": {
            "Version": " ",
            "Type": "Standard",
            "Name": "WebServer"
        },
        "DateUpdated": "2015-08-12T18:16:55.019Z",
        "DateCreated": "2015-08-07T20:48:49.599Z"
    }
]
}
Run Code Online (Sandbox Code Playgroud)

  • 谢谢汤姆,我使用了`aws elasticbeanstalk describe-environments --environment-names my-app --query "Environments[*].CNAME" --output text` (2认同)