为什么我部署时会更换弹性beanstalk实例?

时间:2015-02-12 14:06:16

标签: docker elastic-beanstalk amazon-elastic-beanstalk

我有一个基于docker的弹性beanstalk环境,在rails web应用程序上托管ruby。环境是单个实例框 每当我发出eb deploy命令时,弹性beanstalk都会终止实例并启动一个新实例。我期待EB在同一个实例中启动一个新容器并将其与旧容器交换 此实例终止导致停机。 是否有自动方式将docker部署到弹性beanstalk而不停机?
我找到的唯一解决方案是“交换网址”功能。但我发现它很麻烦。

2 个答案:

答案 0 :(得分:1)

在Elastic Beanstalk环境的配置设置下,您会找到更新和部署。在应用程序部署下,您可以设置批处理类型以满足您的要求。

对于此过程,您将需要将运行实例增加到至少两个。

答案 1 :(得分:0)

  

是否有自动方式将docker部署到弹性beanstalk而无需停机?

  1. 使用您在弹性beanstalk中使用的相同标记将新的docker镜像推送到相同的dockerbub / dockerregistry存储库。
  2. 将Beanstalk大小更改为2以使用新版本的docker容器启动新服务器。
  3. 终止旧实例并允许EB替换它,等待替换变得健康。*
  4. 将EB大小更改回1.
  5. *如果你的减小尺寸为1时不让第二个实例变得健康,它可能会终止健康状态。