11

我想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 部署,只有命令?

编辑 我试过:

初始化 --region eu-west-1 应用程序名

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

Select the default environment.

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

如何在我的eb init命令中自动执行此设置?

4

3 回答 3

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

看起来您已经解决了这个问题,但我还是要澄清一下:EBCLI 要求当前工作目录植根于eb init-ed 应用程序。EBCLI 查找.elasticbeanstalk/config.yml目录以确定 PWD 是否已被eb init编辑。几乎所有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>您的应用程序所在语言的名称在哪里。--platform根据文档传递参数会抑制交互模式。

完成后,您可以执行:

  • eb use <environment name>紧随其后eb deploy,或者只是

  • eb deploy <environment-name>

于 2018-02-12T03:49:46.643 回答
0

我猜您正在尝试开发 CI/CD,您可以在此处查看我的 Jenkinsfile

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

printf '\n\n\n\n\n' | eb init ${EB_APPLICATION} --region ${AWS_REGION} --platform ${EB_PLATFORM}
于 2020-10-05T13:53:03.040 回答
0

我已经从 Azure DevOps 修复了 EBS 部署,使用 cmd 任务和 eb init 通过添加这个

--platform "arn:aws:elasticbeanstalk:us-east-1::platform/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,Java 8 在 64 位 Amazon Linux/3.3.0 上运行" ${{ 参数.环境 }} -v

我用 eb profile show 命令得到了这个

于 2021-03-25T09:22:54.163 回答