amazon-web-services - 在 ECR 中删除最新标签时使用什么图像
问题描述
我正在使用 bitbucket 管道部署以前上传到 ECR 的 docker 映像,使用:
docker tag
docker push
我给新上传的图片的两个标签是${BITBUCKET_BUILD_NUMBER}
和latest
在我的管道的最后一步中,图像被重新部署使用
aws ecs update-service --cluster clusterName --service $BITBUCKET_REPO_SLUG --force-new-deployment
ECS 服务的任务定义设置为使用:latest
我想要实现的是当映像已经部署到 ECR 时,在初始测试和分析步骤之后失败的部署的正确处理。我想防止部署该“错误”图像,这就是为什么我使用 bitbucket-pipelinesafter-script
取消标记并因此在步骤失败时删除该图像:
if [ $BITBUCKET_EXIT_CODE == 1 ]; then aws ecr batch-delete-image --repository-name repo/$BITBUCKET_REPO_SLUG --image-ids imageTag=latest; fi
if [ $BITBUCKET_EXIT_CODE == 1 ]; then aws ecr batch-delete-image --repository-name repo/$BITBUCKET_REPO_SLUG --image-ids imageTag=${BITBUCKET_BUILD_NUMBER}; fi
该任务仍然可以成功重新启动,并且当我$BITBUCKET_EXIT_CODE == 0
在试运行期间设置时,管道能够部署“某些东西”。我的问题是:当 ECR 上没有带有latest
标签的图像时,使用什么图像?有什么方法可以轻松找出吗?
解决方案
推荐阅读
- ios - iOS:如何实现遮罩视图事件穿透?
- c - 自动填充数组
- spring-mvc - jsp页面如何在一个表中添加多个列表
- python - 立即打印 Celery for Python 中已编程任务的任务 ID
- uwp - 为什么不能在通用 Windows 平台中使用 ServiceWorker
- android - 我们如何隐藏下载管理器在通知中显示的取消按钮
- python - 如何通过 Python3.7 中的 Pandas 数据框验证 Excel 工作表中的特定单元格值
- svg - 在颤动中改变路径的高度和宽度
- php - 如何从关联数组中的数组数据值制作数组键
- python - 遍历子目录,读取以给定名称开头的文件并追加