Ange en kvarhållningsprincip för icke-taggade manifest

Azure Container Registry ger dig möjlighet att ange en kvarhållningsprincip för lagrade bildmanifest som inte har några associerade taggar (otaggade manifest). När en kvarhållningsprincip är aktiverad tas otaggade manifest i registret bort automatiskt efter ett antal dagar som du anger. Den här funktionen förhindrar att registret fylls i med artefakter som inte behövs och hjälper dig att spara på lagringskostnaderna.

Du kan använda Azure Cloud Shell eller en lokal installation av Azure CLI för att köra kommandoexemplen i den här artikeln. Om du vill använda det lokalt krävs version 2.0.74 eller senare. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.

En kvarhållningsprincip för icke-taggade manifest är för närvarande en förhandsversionsfunktion i Premium-containerregister . Information om registertjänstnivåer finns i Azure Container Registry tjänstnivåer.

Varning

Ange en kvarhållningsprincip med omsorg – borttagna bilddata är OÅTERKALLELIGA. Om du har system som hämtar avbildningar efter manifestsammandrag (till skillnad från bildnamn) bör du inte ange en kvarhållningsprincip för icke-taggade manifest. Om du tar bort otaggade avbildningar hindras dessa system från att hämta avbildningarna från registret. I stället för att hämta efter manifest bör du överväga att använda ett unikt taggningsschema , en rekommenderad metod.

Om kvarhållningsprincipen

Azure Container Registry gör referensräkning för manifest i registret. När ett manifest inte är taggat kontrollerar det kvarhållningsprincipen. Om en kvarhållningsprincip är aktiverad placeras en manifestborttagningsåtgärd i kö, med ett visst datum, enligt det antal dagar som angetts i principen.

Ett separat köhanteringsjobb bearbetar ständigt meddelanden och skalar efter behov. Anta till exempel att du har avmarkerat två manifest, med 1 timmes mellanrum, i ett register med en kvarhållningsprincip på 30 dagar. Två meddelanden skulle placeras i kö. Sedan, 30 dagar senare, ungefär 1 timme från varandra, skulle meddelandena hämtas från kön och bearbetas, förutsatt att principen fortfarande var i kraft.

Om attributet för delete-enabled ett icke-taggat manifest har angetts till falseär manifestet låst och tas inte bort av principen.

Viktigt

Kvarhållningsprincipen gäller endast för icke-taggade manifest med tidsstämplar när principen har aktiverats. Otaggade manifest i registret med tidigare tidsstämplar omfattas inte av principen. Andra alternativ för att ta bort bilddata finns i exempel i Ta bort containeravbildningar i Azure Container Registry.

Ange en kvarhållningsprincip – CLI

I följande exempel visas hur du använder Azure CLI för att ange en kvarhållningsprincip för icke-taggade manifest i ett register.

Aktivera en kvarhållningsprincip

Som standard anges ingen kvarhållningsprincip i ett containerregister. Om du vill ange eller uppdatera en kvarhållningsprincip kör du kommandot az acr config retention update i Azure CLI. Du kan ange ett antal dagar mellan 0 och 365 för att behålla de otaggade manifesten. Om du inte anger ett antal dagar anger kommandot standardvärdet 7 dagar. Efter kvarhållningsperioden tas alla otaggade manifest i registret bort automatiskt.

I följande exempel anges en kvarhållningsprincip på 30 dagar för otaggade manifest i registrets myregistry:

az acr config retention update --registry myregistry --status enabled --days 30 --type UntaggedManifests

I följande exempel anges en princip för att ta bort ett manifest i registret så snart det inte är taggat. Skapa den här principen genom att ange en kvarhållningsperiod på 0 dagar.

az acr config retention update \
  --registry myregistry --status enabled \
  --days 0 --type UntaggedManifests

Verifiera en kvarhållningsprincip

Om du aktiverar föregående princip med en kvarhållningsperiod på 0 dagar kan du snabbt kontrollera att otaggade manifest tas bort:

  1. Skicka en testbild hello-world:latest till registret eller ersätt en annan testbild som du väljer.
  2. Ta bort avbildningen hello-world:latest , till exempel med kommandot az acr repository untag . Det otaggade manifestet finns kvar i registret.
    az acr repository untag \
      --name myregistry --image hello-world:latest
    
  3. Inom några sekunder tas det otaggade manifestet bort. Du kan verifiera borttagningen genom att visa manifest på lagringsplatsen, till exempel med kommandot az acr manifest list-metadata . Om testbilden var den enda på lagringsplatsen tas själva lagringsplatsen bort.

Hantera en kvarhållningsprincip

Om du vill visa kvarhållningsprincipen i ett register kör du kommandot az acr config retention show :

az acr config retention show --registry myregistry

Om du vill inaktivera en kvarhållningsprincip i ett register kör du kommandot az acr config retention update och anger --status disabled:

az acr config retention update \
  --registry myregistry --status disabled \
  --type UntaggedManifests

Ange en kvarhållningsprincip – portalen

Du kan också ange ett registers kvarhållningsprincip i Azure Portal.

Aktivera en kvarhållningsprincip

  1. Gå till ditt Azure-containerregister. Under Principer väljer du Kvarhållning (förhandsversion).
  2. I Status väljer du Aktiverad.
  3. Välj ett antal dagar mellan 0 och 365 för att behålla de otaggade manifesten. Välj Spara.

Aktivera en kvarhållningsprincip i Azure Portal

Inaktivera en kvarhållningsprincip

  1. Gå till ditt Azure-containerregister. Under Principer väljer du Kvarhållning (förhandsversion).
  2. I Status väljer du Inaktiverad. Välj Spara.

Nästa steg