Elastic Beanstalk 不会自动从 ECR 更新图像
Posted
技术标签:
【中文标题】Elastic Beanstalk 不会自动从 ECR 更新图像【英文标题】:Elastic Beanstalk does not update image from ECR automatically 【发布时间】:2019-09-29 18:32:56 【问题描述】:我有 Dockerrun.aws.json 中的“更新”:“真” 当我在 ECR 中更新图像时,它应该会自动更新 EC2 iontance 中的图像和容器。
但是当我在推送新图像后 ssh 进入实例时,我仍然看到容器和图像没有更新。
[root@ip-10-20-60-125 ~]# docker ps 容器 ID 图像命令创建状态端口名称 c8e3bab8da13 258e7bc272bd "./graphhopper.sh we..." 8 天前 8 天前 8989/tcpender_mayer
[root@ip-10-20-60-125 ~]# docker 镜像 存储库标签图像 ID 创建大小 aws_beanstalk/current-app 最新 258e7bc272bd 8 天前 813MB openjdk 8-jdk b8d3f94869bb 6 周前 625MB
Dockerrun.aws.json 有这个
"AWSEBDockerrunVersion": "1",
"Authentication":
"Bucket": "xxxxx",
"Key": "xxxxx"
,
"Image":
"Name": "213074117100.dkr.ecr.us-east-1.amazonaws.com/xxxxx:latest",
"Update": "true"
,
"Ports": [
"ContainerPort": "8989"
],
"Volumes": [
"HostDirectory": "/data",
"ContainerDirectory": "/data"
],
"Logging": "/var/log/eb",
"Command": "xxxxx"
除了 update: "true" 之外还有其他设置吗?
如果我进行 eb 部署,它将拉取并更新。但是 "Update": "true" 应该在我更新图像时自动拉取和更新,这不会发生。
【问题讨论】:
你最终弄清楚它是什么了吗?目前遇到同样的问题 【参考方案1】:从这个AWS Documentation 和这个线程AWS Beanstalk docker image automatic update doesn't work 看来,update=true 只是在docker run
之前执行docker pull
,它不会在新的图像更新时更新容器。
从我目前的研究来看,目前似乎没有办法自动化这个过程。
【讨论】:
以上是关于Elastic Beanstalk 不会自动从 ECR 更新图像的主要内容,如果未能解决你的问题,请参考以下文章
将 Laravel 应用程序从 GitHub 分支自动部署到 AWS EC2 或 Elastic Beanstalk
如何从 Elastic Beanstalk 实例访问 S3 存储桶中的 docker 配置文件
如何让Elastic Beanstalk nginx支持的代理服务器从HTTP自动重定向到HTTPS?