rgo*_*esf 13 azure docker-registry azure-container-registry
有没有办法只删除特定的标签?我只找到了一种使用REST/cli-acr删除整个注册表的方法
谢谢
您可以使用Azure CLI 2.0从具有给定标记的存储库中删除图像:
az acr repository delete -n MyRegistry --repository MyRepository --tag MyTag
MyRegistry 是Azure容器注册表的名称MyRepository 是存储库的名称MyTag 表示要删除的标记.您也可以通过省略来选择删除整个存储库--tag MyTag.有关该az acr repository delete命令的更多信息,请访问:https://docs.microsoft.com/en-us/cli/azure/acr/repository#delete
小智 6
我们正在加强本月晚些时候GA发布的注册表.我们推迟了所有新功能,同时我们专注于性能,可靠性和其他天蓝色数据中心,通过GA在所有公共数据中心提供ACR.我们将在以后的版本中提供图像和标签的删除.我们开始使用https://github.com/Azure/acr/来跟踪功能和错误.删除在此处捕获:https://github.com/Azure/acr/issues/33
谢谢你的反馈,史蒂夫
我遇到了类似的问题,我想从存储库中删除历史图像,因为我们的配额已达到 100%
我可以通过在 Azure CLI 2.0 中使用以下命令来完成此操作。该过程执行以下操作:获取标签列表,使用 grep 过滤它并使用 sed 清理它,然后将其传递给删除命令。
获取给定存储库的所有标签
az acr repository show-tags -n [registry] --repository [repository]
Run Code Online (Sandbox Code Playgroud)
获取以特定输入开头的所有标记,并将其通过管道传递给 sed,这将删除尾随逗号
grep \"[starts with] | sed 's/,*$//g'
Run Code Online (Sandbox Code Playgroud)
使用 xargs,将输出分配给变量 X 并将其用作标签。
--manifest :删除标签引用的清单。这还会删除任何关联的图层数据和引用清单的所有其他标签。
--yes -y : 不提示确认。
xargs -I X az acr repository delete -n [registry] --repository [repository] --tag X --manifest --yes
Run Code Online (Sandbox Code Playgroud)
例如registry = myRegistry,repository = myRepo,我想删除以标签名“test”开头的所有标签(这包括test123,testing等)
az acr repository show-tags -n myRegistry --repository myRepo | grep \"test | sed 's/,*$//g' | xargs -I X az acr repository delete -n myRegistry --repository myRepo --tag X --manifest --yes
Run Code Online (Sandbox Code Playgroud)
可以在此处找到更多信息Microsoft Azure 文档
这是一个Powershell脚本,可删除除标签MyTag1和MyTag2之外的所有Azure容器注册表标签:
az acr repository show-tags -n MyRegistry --repository MyRepository | ConvertFrom-String | %{$_.P2 -replace "[`",]",""} | where {$_ -notin "MyTag1","MyTag2" } | % {az acr repository delete -n MyRegistry --repository MyRepository --tag $_ --yes}
Run Code Online (Sandbox Code Playgroud)
它使用Azure CLI 2.0。
| 归档时间: |
|
| 查看次数: |
7740 次 |
| 最近记录: |