SuperAPI AI 工具集

azure-containerregistry-py

编程与开发

查看项目

更新于 10-15 23:47

技能介绍

用途:通过 Python 管理 Azure Container Registry 中的容器镜像、制品与仓库,适合镜像清理、仓库元数据查询和制品下载等自动化场景。

安装:pip install azure-containerregistry。需设置环境变量 AZURE_CONTAINERREGISTRY_ENDPOINT=https://<registry-name>.azurecr.io。

认证:推荐使用 Entra ID,通过 DefaultAzureCredential 创建 ContainerRegistryClient;公开注册表可匿名访问,credential=None 并指定 audience。

主要能力:list_repository_names 列出仓库;get_repository_properties 获取创建时间、更新时间、清单数与标签数;update_repository_properties 设置 can_delete、can_write;delete_repository 删除仓库及全部镜像。标签方面可 list_tag_properties、get_tag_properties、delete_tag,并可按 ArtifactTagOrder 排序。清单方面可 list_manifest_properties、get_manifest_properties、update_manifest_properties、delete_manifest,支持按 ArtifactManifestOrder 排序,可查看 digest、tags、大小、架构与操作系统。还可 download_manifest 与 download_blob 下载清单和层数据。

异步支持:azure.containerregistry.aio 提供异步客户端,适合高吞吐操作,使用后需 close。

典型用法:按 last_updated_on 过滤并删除超过 30 天且无标签的清单,实现旧镜像清理。

限制与建议:生产环境使用 Entra ID;按 digest 而非 tag 删除以避免孤立镜像;用 can_delete=False 锁定生产镜像;删除前检查 manifest.tags;定期清理未打标签的清单。资料未提供收费、价格与配额信息。