AWS Elastic Beanstalk 与 AMI2 和 docker-compose.yml

Posted

技术标签:

【中文标题】AWS Elastic Beanstalk 与 AMI2 和 docker-compose.yml【英文标题】:AWS Elastic Beanstalk with AMI2 and docker-compose.yml 【发布时间】:2021-07-11 11:37:08 【问题描述】:

我一直在尝试使 Elastic Beanstalk 与 Docker AMI2 映像和 docker-compose.yml 一起工作。 文档说它应该使用 docker-compose.yml 文件开箱即用。 我使用 ECR 作为 docker 注册表并更新了 Elastic Beanstalk 角色,以便能够从 ECR 中提取图像。 https://docs.amazonaws.cn/en_us/elasticbeanstalk/latest/dg/single-container-docker-configuration.html

创建 docker-compose.yml 文件以将 Docker 映像从托管存储库部署到 Elastic Beanstalk。如果您的所有部署都来自公共存储库中的图像,则不需要其他文件。 (如果您的部署必须从私有存储库获取图像,则需要包含其他配置文件以进行身份​​验证。有关更多信息,请参阅使用来自私有存储库的图像。)有关 docker-compose.yml 文件的更多信息,请参阅 Compose Docker 网站上的文件参考。

但是,在启动环境时,我不断收到以下消息:

实例部署:您必须在源包中的“Dockerfile”或“Dockerrun.aws.json”中指定 Docker 映像。部署失败。

根据文档Dockerrun.aws.json,只有旧 AMI 才需要。有没有人遇到过类似的问题?

【问题讨论】:

【参考方案1】:

找到了解决办法。文档指出 docker-compose.yml 是唯一需要的文件,但在上传到 Elastic Beanstalk 环境之前仍需要对其进行压缩。

【讨论】:

以上是关于AWS Elastic Beanstalk 与 AMI2 和 docker-compose.yml的主要内容,如果未能解决你的问题,请参考以下文章

AWS dynamoDB 与 Elastic Beanstalk。啥更符合我的目的?

如何将 AWS 凭证与 Jenkins 一起使用以部署到 Elastic Beanstalk?

是否建议将 Docker 与 AWS Elastic beanstalk 一起使用?

一个 AWS 账户中的 Elastic Beanstalk 能否与另一个 AWS 账户中的 RDS 通信?

如何将 AWS CLI 与 Elastic Beanstalk 一起使用?

AWS 和 Elastic Beanstalk