使用Docker和工件在Beanstalk上部署新的应用程序版本

时间:2018-11-26 15:25:33

标签: docker amazon-elastic-beanstalk

我有一个在Elastic Beanstalk上运行的docker应用,我想要实现的是在我的CI服务器上构建我应用的编译版本,将其发送到S3,然后将代码部署到EB。

我的dockerfile基本上可以拉动工件并运行它。

通过此设置推送我的应用程序的新版本的最佳方法是什么?我运行的N个实例具有自动缩放功能,希望将停机时间降到最低

1 个答案:

答案 0 :(得分:1)

EBCLI提供了一种设置artifact进行部署的方法。但是,由于无法传递S3路径/ URL,因此需要首先下载工件。

在您的CI服务器上,创建一个脚本,可以执行以下操作:

  1. 从S3下载工件
  2. eb init
  3. 以编程方式修改.elasticbeanstalk/config.yml,以使artifact值是工件的本地路径。
  4. eb create / eb deploy