Ustawianie zasad przechowywania dla nieoznakowanych manifestów

Azure Container Registry umożliwia ustawienie zasad przechowywania przechowywanych manifestów obrazów, które nie mają żadnych skojarzonych tagów (nieoznakowanych manifestów). Po włączeniu zasad przechowywania manifesty bez tagów w rejestrze są automatycznie usuwane po ustawieniu kilku dni. Ta funkcja uniemożliwia wypełnianie rejestru artefaktami, które nie są potrzebne i pomaga zaoszczędzić na kosztach magazynowania.

Aby uruchomić przykłady poleceń w tym artykule, możesz użyć usługi Azure Cloud Shell lub lokalnej instalacji interfejsu wiersza polecenia platformy Azure. Jeśli chcesz używać go lokalnie, wymagana jest wersja 2.0.74 lub nowsza. Uruchom polecenie az --version, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczna będzie instalacja lub uaktualnienie, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

Zasady przechowywania nieoznakowanych manifestów są obecnie funkcją w wersji zapoznawczej rejestrów kontenerów w warstwie Premium . Aby uzyskać informacje o warstwach usług rejestru, zobacz Azure Container Registry warstwy usług.

Ostrzeżenie

Ustawienie zasad przechowywania z danymi obrazów usuniętych przez opiekę jest nie do odzyskania. Jeśli masz systemy ściągające obrazy według skrótu manifestu (w przeciwieństwie do nazwy obrazu), nie należy ustawiać zasad przechowywania dla nieotagowanych manifestów. Usunięcie nieotagowanych obrazów uniemożliwi tym systemom ściąganie obrazów z rejestru. Zamiast ściągać przez manifest, rozważ wdrożenie unikatowego schematu tagowania , zalecane najlepsze rozwiązanie.

Informacje o zasadach przechowywania

Azure Container Registry odwołuje się do zliczania manifestów w rejestrze. Gdy manifest jest nieoznakowany, sprawdza zasady przechowywania. Jeśli zasady przechowywania są włączone, operacja usuwania manifestu jest kolejkowana z określoną datą zgodnie z liczbą dni ustawioną w zasadach.

Oddzielne zadanie zarządzania kolejkami stale przetwarza komunikaty, skalowanie w razie potrzeby. Załóżmy na przykład, że w rejestrze z zasadami przechowywania od 30 dni nieoznakowane dwa manifesty są od siebie oddalone o 1 godzinę. Dwie komunikaty będą kolejkowane. Następnie, 30 dni później, około 1 godziny od siebie, komunikaty zostaną pobrane z kolejki i przetworzone, zakładając, że zasady były nadal obowiązujące.

delete-enabled Jeśli atrybut manifestu bez tagów jest ustawiony na falsewartość , manifest jest zablokowany i nie jest usuwany przez zasady.

Ważne

Zasady przechowywania mają zastosowanie tylko do nieoznakowanych manifestów ze znacznikami czasu po włączeniu zasad. Nieoznakowane manifesty w rejestrze z wcześniejszymi znacznikami czasu nie podlegają zasadom. Aby uzyskać inne opcje usuwania danych obrazów, zobacz przykłady w temacie Usuwanie obrazów kontenerów w Azure Container Registry.

Ustawianie zasad przechowywania — interfejs wiersza polecenia

W poniższym przykładzie pokazano, jak za pomocą interfejsu wiersza polecenia platformy Azure ustawić zasady przechowywania dla nieotagowanych manifestów w rejestrze.

Włączanie zasad przechowywania

Domyślnie żadne zasady przechowywania nie są ustawiane w rejestrze kontenerów. Aby ustawić lub zaktualizować zasady przechowywania, uruchom polecenie az acr config retention update w interfejsie wiersza polecenia platformy Azure. Możesz określić liczbę dni z zakresu od 0 do 365, aby zachować nieotagowane manifesty. Jeśli nie określisz liczby dni, polecenie ustawi wartość domyślną 7 dni. Po okresie przechowywania wszystkie niezatwierdzone manifesty w rejestrze zostaną automatycznie usunięte.

W poniższym przykładzie ustawiono zasady przechowywania 30 dni dla manifestów nieotagowanych w rejestrze myregistry:

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

Poniższy przykład ustawia zasady, aby usunąć dowolny manifest w rejestrze, gdy tylko nie jest on oznaczony. Utwórz te zasady, ustawiając okres przechowywania 0 dni.

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

Weryfikowanie zasad przechowywania

Jeśli włączysz powyższe zasady z okresem przechowywania 0 dni, możesz szybko sprawdzić, czy nieotagowane manifesty zostaną usunięte:

  1. Wypchnij obraz hello-world:latest testowy do rejestru lub zastąp wybrany inny obraz testowy.
  2. Usuń tag hello-world:latest obrazu, na przykład przy użyciu polecenia az acr repository untag . Nieoznakowany manifest pozostaje w rejestrze.
    az acr repository untag \
      --name myregistry --image hello-world:latest
    
  3. W ciągu kilku sekund nieoznakowany manifest zostanie usunięty. Usunięcie można sprawdzić, wyświetlając listę manifestów w repozytorium, na przykład za pomocą polecenia az acr manifest list-metadata . Jeśli obraz testowy był jedynym w repozytorium, samo repozytorium zostanie usunięte.

Zarządzanie zasadami przechowywania

Aby wyświetlić zasady przechowywania ustawione w rejestrze, uruchom polecenie az acr config retention show :

az acr config retention show --registry myregistry

Aby wyłączyć zasady przechowywania w rejestrze, uruchom polecenie az acr config retention update i ustaw polecenie --status disabled:

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

Ustawianie zasad przechowywania — portal

Można również ustawić zasady przechowywania rejestru w Azure Portal.

Włączanie zasad przechowywania

  1. Przejdź do rejestru kontenerów platformy Azure. W obszarze Zasady wybierz pozycję Przechowywanie (wersja zapoznawcza).
  2. W obszarze Stan wybierz pozycję Włączone.
  3. Wybierz liczbę dni z zakresu od 0 do 365, aby zachować nieotagowane manifesty. Wybierz pozycję Zapisz.

Włączanie zasad przechowywania w Azure Portal

Wyłączanie zasad przechowywania

  1. Przejdź do rejestru kontenerów platformy Azure. W obszarze Zasady wybierz pozycję Przechowywanie (wersja zapoznawcza).
  2. W obszarze Stan wybierz pozycję Wyłączone. Wybierz pozycję Zapisz.

Następne kroki