如何使用亚马逊linux 2弹性豆柄多容器码头?



目前,Amazon已弃用Multi-container Docker running on 64bit Amazon Linux,需要迁移到Docker running on 64bit Amazon Linux 2。在第一个版本中,我们使用Dockerrun.aws.json v2来管理多容器docker。在最新版本(Docker running on 64bit Amazon Linux 2)中,我们需要使用Dockerrun.aws.json v3docker-compose。但是没有可行的例子或可用的博客。我可以得到工作样本吗?

关于Elastic Beanstalk和运行在64位Amazon Linux 2平台上的Docker

我也在挣扎,最后终于找到了它的底部。让我感到困惑的是,文档使您似乎可以选择使用Dockerrun.aws.json (v3)或docker-compose。

然后你去寻找Dockerrun.aws.json (v3)的文档,你不会在任何地方找到它。

原因是,你没有选择。如果你想运行多个容器,你必须包含一个docker-compose。应用程序包中的Yml。Dockerrun.aws.json (v3)允许您做的唯一事情是配置s3桶和密钥到您的容器存储库身份验证文件".dockercfg">

这基本上是Dockerrun.aws的文档。json (v3)";它不支持任何类似Dockerrun.aws的东西。json (v2)

{
"AWSEBDockerrunVersion": "3",
"Authentication": {
"bucket": "DOC-EXAMPLE-BUCKET",
"key": "mydockercfg"
}
}

包含docker-compose。只有当docker映像位于私有存储库中时,你才需要dockerrun.aws.json (v3)。

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/single-container-docker-configuration.html

根据AWS Docs,运行在Amazon Linux上的多容器Docker可以迁移到Amazon Linux 2上的ECS

这个选项似乎比使用Elastic Beanstalk控制台更容易在CLI中应用,因为它只需要一个命令:

aws elasticbeanstalk update-environment 
--environment-name ${my-env} 
--solution-stack-name "64bit Amazon Linux 2 ${version} running ECS" 
--region ${my-region}

我建议你首先克隆你想要升级的环境,将上面提到的命令应用到这个复制的环境并测试它,如果一切都如预期的那样工作,那么你可以使用蓝/绿部署来避免停机。

我希望这能帮助到别人!

现在(2023),如果您仍然需要从Multi-container Docker running on 64bit Amazon平台迁移,您可以选择创建一个ECS running on 64bit Amazon Linux 2/3.2.5环境,该环境将支持与多容器相同的Dockerrun.aws.json(v2)文件:将运行在Amazon Linux上的多容器Docker迁移到Amazon Linux 2上的ECS。

或者您也可以尝试按照Osain给出的响应进行迁移。

相关内容

  • 没有找到相关文章

最新更新