Sperren von Containerimages in einer Azure-ContainerregistrierungLock a container image in an Azure container registry

Sie können eine Imageversion oder ein Repository in einer Azure-Containerregistrierung sperren, damit es nicht gelöscht oder aktualisiert werden kann.In an Azure container registry, you can lock an image version or a repository so that it can't be deleted or updated. Aktualisieren Sie die Attribute mithilfe des Azure CLI-Befehls az acr repository update, um ein Image oder ein Repository zu sperren.To lock an image or a repository, update its attributes using the Azure CLI command az acr repository update.

Für die Vorgehensweisen in diesem Artikel ist erforderlich, dass Sie die Azure CLI in Azure Cloud Shell oder lokal ausführen (Version 2.0.55 oder höher werden empfohlen).This article requires that you run the Azure CLI in Azure Cloud Shell or locally (version 2.0.55 or later recommended). Führen Sie az --version aus, um die Version zu ermitteln.Run az --version to find the version. Informationen zum Durchführen einer Installation oder eines Upgrades finden Sie bei Bedarf unter Installieren der Azure CLI.If you need to install or upgrade, see Install Azure CLI.

Wichtig

Dieser Artikel gilt nicht für das Sperren einer ganzen Registrierung, z. B. durch die Verwendung von Einstellungen > Sperren im Azure-Portal oder von az lock-Befehlen in der Azure CLI.This article doesn't apply to locking an entire registry, for example, using Settings > Locks in the Azure portal, or az lock commands in the Azure CLI. Das Sperren einer Registrierungsressource hindert Sie nicht am Erstellen, Aktualisieren oder Löschen von Daten in Repositorys.Locking a registry resource doesn't prevent you from creating, updating, or deleting data in repositories. Das Sperren einer Registrierung wirkt sich nur auf Verwaltungsvorgänge wie das Hinzufügen oder Löschen von Replizierungen oder das Löschen der Registrierung selbst aus.Locking a registry only affects management operations such as adding or deleting replications, or deleting the registry itself. Weitere Informationen finden Sie unter Sperren von Ressourcen, um unerwartete Änderungen zu verhindern.More information in Lock resources to prevent unexpected changes.

SzenarienScenarios

Markierte Images sind in Azure Container Registry standardmäßig änderbar. Mit den entsprechenden Berechtigungen können Sie ein Image also wiederholt mit dem gleichen Tag aktualisieren und an eine Registrierung pushen.By default, a tagged image in Azure Container Registry is mutable, so with appropriate permissions you can repeatedly update and push an image with the same tag to a registry. Containerimages können bei Bedarf auf gelöscht werden.Container images can also be deleted as needed. Dieses Verhalten ist nützlich, wenn Sie Images entwickeln und eine Größe für Ihre Registrierung einhalten müssen.This behavior is useful when you develop images and need to maintain a size for your registry.

Wenn Sie jedoch ein Containerimage für die Produktionsumgebung bereitstellen, benötigen Sie möglicherweise ein unveränderliches Containerimage.However, when you deploy a container image to production, you might need an immutable container image. Ein unveränderliches Containerimage kann nicht versehentlich gelöscht oder überschrieben werden.An immutable image is one that you can't accidentally delete or overwrite.

Informationen zu Strategien zum Taggen und für die Versionsverwaltung von Images in Ihrer Registrierung finden Sie unter Empfehlungen für das Taggen und die Versionsverwaltung von Containerimages.See Recommendations for tagging and versioning container images for strategies to tag and version images in your registry.

Verwenden Sie den Befehl az acr repository update, um Repositoryattribute für Folgendes festzulegen:Use the az acr repository update command to set repository attributes so you can:

  • Sperren einer Imageversion oder eines gesamten RepositorysLock an image version, or an entire repository

  • Schützen einer Imageversion oder eines Repositorys mit zugelassenen UpdatesProtect an image version or repository from deletion, but allow updates

  • Verhindern von Lesevorgängen (Pull) für eine Imageversion oder ein gesamtes RepositoryPrevent read (pull) operations on an image version, or an entire repository

Beispiele hierzu finden Sie in den nachfolgenden Abschnitten.See the following sections for examples.

Sperren von Images oder RepositorysLock an image or repository

Anzeigen der aktuellen Repository-AttributeShow the current repository attributes

Führen Sie den folgenden Befehl vom Typ az acr repository show aus, um die aktuellen Attribute eines Repositorys anzuzeigen:To see the current attributes of a repository, run the following az acr repository show command:

az acr repository show \
    --name myregistry --repository myrepo \
    --output jsonc

Anzeigen der aktuellen ImageattributeShow the current image attributes

Führen Sie den folgenden Befehl vom Typ az acr repository show aus, um die aktuellen Attribute eines Tags anzuzeigen:To see the current attributes of a tag, run the following az acr repository show command:

az acr repository show \
    --name myregistry --image image:tag \
    --output jsonc

Sperren von Images mithilfe von TagsLock an image by tag

Führen Sie den folgenden Befehl vom Typ az acr repository update aus, um das Image myrepo/myimage:tag in myregistry zu sperren:To lock the myrepo/myimage:tag image in myregistry, run the following az acr repository update command:

az acr repository update \
    --name myregistry --image myrepo/myimage:tag \
    --write-enabled false

Sperren von Images anhand von Manifest-DigestsLock an image by manifest digest

Führen Sie den folgenden Befehl aus, um ein myrepo/myimage-Image zu sperren, das durch ein Manifest-Digest identifiziert wird (SHA-256-Hash, der als sha256:... dargestellt wird).To lock a myrepo/myimage image identified by manifest digest (SHA-256 hash, represented as sha256:...), run the following command. (Führen Sie den Befehl az acr repository show-manifests aus, um den Manifest-Digest zu ermitteln, der mindestens einem Imagetag zugeordnet ist.)(To find the manifest digest associated with one or more image tags, run the az acr repository show-manifests command.)

az acr repository update \
    --name myregistry --image myrepo/myimage@sha256:123456abcdefg \
    --write-enabled false

Sperren eines RepositorysLock a repository

Führen Sie den folgenden Befehl aus, um das Repository myrepo/myimage und alle darin enthaltenen Images zu sperren:To lock the myrepo/myimage repository and all images in it, run the following command:

az acr repository update \
    --name myregistry --repository myrepo/myimage \
    --write-enabled false

Schützen von Images und Repositorys vor dem LöschenProtect an image or repository from deletion

Schützen von Images vor dem LöschenProtect an image from deletion

Führen Sie den folgenden Befehl aus, um die Aktualisierung, aber nicht das Löschen, des Images myrepo/myimage:tag zuzulassen:To allow the myrepo/myimage:tag image to be updated but not deleted, run the following command:

az acr repository update \
    --name myregistry --image myrepo/myimage:tag \
    --delete-enabled false --write-enabled true

Schützen von Repositorys vor dem LöschenProtect a repository from deletion

Mit dem folgenden Befehl wird das Repository myrepo/myimage so festgelegt, dass es nicht gelöscht werden kann.The following command sets the myrepo/myimage repository so it can't be deleted. Einzelne Images können weiterhin aktualisiert oder gelöscht werden.Individual images can still be updated or deleted.

az acr repository update \
    --name myregistry --repository myrepo/myimage \
    --delete-enabled false --write-enabled true

Verhindern von Lesevorgängen für Images oder RepositorysPrevent read operations on an image or repository

Führen Sie den folgenden Befehl aus, um Lesevorgänge (Pull) für das Image myrepo/myimage:tag zu verhindern:To prevent read (pull) operations on the myrepo/myimage:tag image, run the following command:

az acr repository update \
    --name myregistry --image myrepo/myimage:tag \
    --read-enabled false

Führen Sie den folgenden Befehl aus, um Lesevorgänge für das Repository myrepo/myimage zu verhindern:To prevent read operations on all images in the myrepo/myimage repository, run the following command:

az acr repository update \
    --name myregistry --repository myrepo/myimage \
    --read-enabled false

Entsperren von Images oder RepositorysUnlock an image or repository

Führen Sie den folgenden Befehl aus, um das Standardverhalten des Images myrepo/myimage:tag wiederherzustellen, damit es wieder gelöscht und aktualisiert werden kann:To restore the default behavior of the myrepo/myimage:tag image so that it can be deleted and updated, run the following command:

az acr repository update \
    --name myregistry --image myrepo/myimage:tag \
    --delete-enabled true --write-enabled true

Führen Sie den folgenden Befehl aus, um das Standardverhalten des Repositorys myrepo/myimage und der enthaltenen Images wiederherzustellen, damit sie wieder gelöscht und aktualisiert werden können:To restore the default behavior of the myrepo/myimage repository and all images so that they can be deleted and updated, run the following command:

az acr repository update \
    --name myregistry --repository myrepo/myimage \
    --delete-enabled true --write-enabled true

Nächste SchritteNext steps

In diesem Artikel haben Sie gelernt, wie Sie den Befehl az acr repository update verwenden, um das Löschen und Aktualisieren von Imageversionen in einem Repository zu verhindern.In this article, you learned about using the az acr repository update command to prevent deletion or updating of image versions in a repository. Informationen zum Festlegen zusätzlicher Attribute finden Sie in der Referenz zum Befehl az acr repository update.To set additional attributes, see the az acr repository update command reference.

Mit dem Befehl az acr repository show können Sie die für eine Imageversion oder ein Repository festgelegten Attribute anzeigen.To see the attributes set for an image version or repository, use the az acr repository show command.

Ausführliche Informationen zu Löschvorgängen finden Sie unter Löschen von Containerimages in Azure Container Registry.For details about delete operations, see Delete container images in Azure Container Registry.