How to delete image from Azure Container Registry

后端 未结 8 975
佛祖请我去吃肉
佛祖请我去吃肉 2020-12-29 09:13

Is there a way to delete specific tags only? I only found a way to delete the whole registry using the REST/cli-acr

Thanks

8条回答
  •  旧巷少年郎
    2020-12-29 09:32

    I had a similar problem where I wanted to remove historical images from the repository as our quota had reached 100%

    I was able to do this by using the following commands in the Azure CLI 2.0. The process does the following : obtain a list of tags, filter it with grep and clean it up with sed before passing it to the delete command.

    Get all the tags for the given repository

    az acr repository show-tags -n [registry] --repository [repository] 
    

    Get all the tags that start with the specific input and pipe that to sed which will remove the trailing comma

    grep \"[starts with] | sed 's/,*$//g'
    

    Using xargs, assign the output to the variable X and use that as the tag.

    --manifest : Delete the manifest referenced by a tag. This also deletes any associated layer data and all other tags referencing the manifest.

    --yes -y : Do not prompt for confirmation.

    xargs -I X az acr repository delete -n [registry] --repository [repository] --tag X --manifest --yes
    

    e.g. registry = myRegistry, repository = myRepo, I want to remove all tags that start with the tagname 'test' ( this would include test123, testing etc )

    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
    

    More information can be found here Microsoft Azure Docs

提交回复
热议问题