注意事项:
- 创建aksk
- 请确保你拥有删除ECR资源的权限。
- 删除ECR资源是不可逆的操作,请谨慎使用此脚本
clike
import boto3
import json
# 设置AKK和SKK
access_key_id = "YOUR_ACCESS_KEY_ID"
secret_access_key = "YOUR_SECRET_ACCESS_KEY"
# 创建ECR客户端
client = boto3.client('ecr', region_name='YOUR_REGION_NAME',
aws_access_key_id=access_key_id,
aws_secret_access_key=secret_access_key)
# 使用 paginator 迭代获取仓库列表
paginator = client.get_paginator('describe_repositories')
for page in paginator.paginate():
repositories = page['repositories']
# 遍历每个仓库
for repository in repositories:
repository_name = repository['repositoryName']
print(f"开始删除仓库:{repository_name}")
# 获取仓库镜像列表
image_ids = client.list_images(repositoryName=repository_name)['imageIds']
# 删除每个镜像
for image_id in image_ids:
print(f"删除镜像:{image_id}")
# 用新的替代方法删除镜像
client.batch_delete_image(repositoryName=repository_name, imageIds=[image_id])
# 删除仓库
print(f"删除仓库:{repository_name}")
client.delete_repository(repositoryName=repository_name)