代码之家  ›  专栏  ›  技术社区  ›  DenCowboy

如何在没有手动说明的情况下使用eb init

  •  12
  • DenCowboy  · 技术社区  · 7 年前

    我想做一个 eb deploy 在干净的环境中。它告诉我我首先需要执行 eb init .

    当我这样做时,我看到以下内容:

    Select a default region
    1) us-east-1 : US East (N. Virginia)
    2) us-west-1 : US West (N. California)
    3) us-west-2 : US West (Oregon)
    4) eu-west-1 : EU (Ireland)
    5) eu-central-1 : EU (Frankfurt)
    6) ap-south-1 : Asia Pacific (Mumbai)
    7) ap-southeast-1 : Asia Pacific (Singapore)
    8) ap-southeast-2 : Asia Pacific (Sydney)
    9) ap-northeast-1 : Asia Pacific (Tokyo)
    10) ap-northeast-2 : Asia Pacific (Seoul)
    11) sa-east-1 : South America (Sao Paulo)
    12) cn-north-1 : China (Beijing)
    13) us-east-2 : US East (Ohio)
    14) ca-central-1 : Canada (Central)
    15) eu-west-2 : EU (London)
    (default is 3):
    

    正如您所见,设置需要手动说明。 如何自动执行此设置?

    我试过了

    $ export AWS_ACCESS_KEY_ID="xxx"
    $ export AWS_SECRET_ACCESS_KEY="xxx"
    $ export AWS_DEFAULT_REGION="xxx"
    $ eb init
    

    但还是有必要选择地区等(如上所述)?

    如何自动生成 .aws 要在没有手动交互的情况下进行eb部署,只需命令?

    编辑 我试过:

    init—地区eu-west-1 appname

    这已经让我走得更远了,但现在我收到了:

    Select the default environment.
    
    You can change this later by typing "eb use [environment_name]".
    1) app-dev
    2) app-uat
    

    如何在 eb初始 命令

    3 回复  |  直到 7 年前
        1
  •  11
  •   progfan    7 年前
    1. 我想做一个 eb deploy 在干净的环境中。它告诉我首先需要执行eb init。

    看起来您已经解决了这个问题,但我还是要澄清一下:EBCLI要求当前工作目录的根目录为 eb init -ed应用程序。EBCLI查找 .elasticbeanstalk/config.yml 用于确定PWD是否已 eb初始 -ed.几乎所有 eb 操作要求PWD init -使用Beanstalk应用程序进行编辑。

    1. 编辑我尝试过: eb init --region eu-west-1 appname ...

    你就快到了。为了抑制交互式模式,您需要传递 --platform 旗帜我清楚地看到这有多不方便,但您需要的是:

    eb init --region eu-west-1 --platform <platform-name> appname

    哪里 <platform-name> 是应用程序所用语言的名称。通过 --平台 参数根据 documentation .

    完成后,您可以执行:

    • eb use <environment name> 然后 eb部署 ,或只是

    • eb deploy <environment-name>

        2
  •  0
  •   Khaled AbuShqear    5 年前

    我想你是在开发CI/CD,你可以查看我的Jenkins文件 here

    您可以将输入传递给 eb deploy 命令使用 printf 命令:

    printf '\n\n\n\n\n' | eb init ${EB_APPLICATION} --region ${AWS_REGION} --platform ${EB_PLATFORM}
    
        3
  •  0
  •   Igor Igorito    4 年前

    我已经修复了Azure DevOps的EBS部署,通过添加以下内容,将cmd task与eb init一起使用

    --平台“arn:aws:elasticbeanstalk:us-east-1::平台/Tomcat 8.5,Java 8在64位Amazon Linux/3.3.0上运行”

    完整命令

    eb init--profile eb cli--region us-east-1--platform“arn:aws:elasticbeanstalk:us-east-1::platform/Tomcat 8.5 with Java 8在64位Amazon Linux/3.3.0“${{{parameters.ENVIRONMENT}}}}上运行-v

    我是通过eb profile show命令得到的