我的设置: -我在Dockerrun.aws.json文件中指定了一个multidocker应用程序。 -我的应用程序图像存储在ECR中。
在用于Elastic Beanstalk的AWS控制台中,我可以“上传和部署”新的Dockerrun.aws.json文件。然后,Elastic Beanstalk会部署该版本。
是否可以通过aws elasticbeanstalk
命令行执行相同的操作(“上传和部署”)?
我找到的最接近的东西是aws elasticbeanstalk rebuild-environment --environment-id $ENVIRONMENT_ID
。但这只能使用现有的Dockerrun.aws.json文件重建现有环境。如果我要在cli中使用另一个版本的Dockerrun.aws.json文件部署环境,怎么办?
答案 0 :(得分:0)
是的,您可以使用AWS CLI创建新的部署,并且如图所示,#btn-form-submit:before {
content: "Submit";
}
form.amp-form-submitting #btn-form-submit:before {
content: "Submitting";
}
不是API调用。您正在寻找三个呼叫的组合-一个呼叫S3,两个呼叫Beanstalk
执行对ElasticBeanstalk的CreateApplicationVersion
API的调用:
RebuildEnvironment
执行对Beanstalk的UpdateEnvironment
API的调用:
aws elasticbeanstalk create-application-version --application-name <beanstalk-app> --version-label <a unique label for this version of code> --description <description of your changes> --source-bundle S3Bucket="<bucket name previously noted",S3Key="<key name previously noted"
显然,这很繁琐,所以我也建议您考虑通过EBCLI进行部署,该过程通过一个命令aws elasticbeanstalk update-environment --environment-name <name of environment> --version-label <label of app. version created above>