Azure kapsayıcı kayıt defterinde kapsayıcı görüntüsünü kilitleme

Azure kapsayıcı kayıt defterinde, silinemez veya güncelleştirilemez şekilde bir görüntü sürümünü veya depoyu kilitlersiniz. Bir görüntüyü veya depoyu kilitlemek için az acr repository update Azure CLI komutunu kullanarak özniteliklerini güncelleştirin.

Bu makale, Azure CLI'sini Azure Cloud Shell yerel olarak çalıştırmanız gerekir (sürüm 2.0.55 veya sonrası önerilir). Sürümü bulmak için az --version komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure CLI yükleme.

Önemli

Bu makale kayıt defterinin tamamını kilitlemek için geçerli değildir. Örneğin, Ayarlar > Azure portal veya Azure CLI'daki komutlarda az lock kilitlenir. Bir kayıt defteri kaynağını kilitlemek, depolarda veri oluşturmanızı, güncelleştirmenizi veya silmenizi engellemez. Bir kayıt defterinin kilitlenmesi yalnızca çoğaltma ekleme veya silme ya da kayıt defterinin kendisini silme gibi yönetim işlemlerini etkiler. Beklenmeyen değişiklikleri önlemek için kaynakları kilitleme içinde daha fazla bilgi.

Senaryolar

Varsayılan olarak, Azure Container Registry etiketli bir görüntü değiştirebilir, bu nedenle uygun izinlerle tekrar tekrar aynı etikete sahip bir görüntüyü bir kayıt defterine güncelleştirebilir ve itebilirsiniz. Kapsayıcı görüntüleri gerektiğinde de silinebilir. Bu davranış, görüntü geliştirirken ve kayıt defteriniz için bir boyut sürdürmeniz gerekirken yararlıdır.

Ancak, bir kapsayıcı görüntüsünü üretime dağıtırken sabit bir kapsayıcı görüntüsüne ihtiyacınız olabilir. Sabit bir görüntü, yanlışlıkla silemez veya üzerine yazamaz.

Kayıt Öneriler etiketleme ve sürüm görüntüleri stratejileri için bkz. Kapsayıcı görüntülerini etiketleme ve sürümleme.

Aşağıdakiler için depo özniteliklerini ayarlamak üzere az acr repository update komutunu kullanın:

  • Görüntü sürümünü veya deponun tamamını kilitleme

  • Görüntü sürümünü veya depoyu silinmeye karşı koruma ancak güncelleştirmelere izin verme

  • Görüntü sürümünde veya deponun tamamına yönelik okuma (çekme) işlemlerini engelleme

Örnekler için aşağıdaki bölümlere bakın.

Görüntüyü veya depoyu kilitleme

Geçerli depo özniteliklerini gösterme

Bir deponun geçerli özniteliklerini görmek için aşağıdaki az acr repository show komutunu çalıştırın:

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

Geçerli görüntü özniteliklerini gösterme

Bir etiketin geçerli özniteliklerini görmek için aşağıdaki az acr repository show komutunu çalıştırın:

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

Görüntüyü etikete göre kilitleme

myregistry'de myimage:tag görüntüsünü kilitlemek için aşağıdaki az acr repository update komutunu çalıştırın:

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

Bir görüntüyü bildirim özetine göre kilitleme

Bildirim özetiyle tanımlanan bir myimage görüntüsünü (olarak temsil edilen SHA-256 karması) kilitlemek sha256:... için aşağıdaki komutu çalıştırın. (Bir veya daha fazla görüntü etiketiyle ilişkili bildirim özetini bulmak için az acr repository show-manifests komutunu çalıştırın.)

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

Depoyu kilitleme

myrepo deposunu ve bu depoda yer alan tüm görüntüleri kilitlemek için aşağıdaki komutu çalıştırın:

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

Görüntüyü veya depoyu silinmeye karşı koruma

Görüntüyü silinmeye karşı koruma

myimage:tag görüntüsünün güncelleştirilmelerine ancak silinmelerine izin vermek için aşağıdaki komutu çalıştırın:

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

Depoyu silinmeye karşı koruma

Aşağıdaki komut myrepo deposunu silinemez şekilde ayarlar. Tek tek görüntüler yine de güncelleştirilebilir veya silinebilir.

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

Görüntü veya depo üzerinde okuma işlemlerini engelleme

myimage:tag görüntüsünde okuma (çekme) işlemlerini önlemek için aşağıdaki komutu çalıştırın:

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

myrepo deposundaki tüm görüntülerde okuma işlemlerini önlemek için aşağıdaki komutu çalıştırın:

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

Bir görüntünün veya deponun kilidini açma

Silinecek ve güncelleştirilecek şekilde myimage:tag görüntüsünün varsayılan davranışını geri yüklemek için aşağıdaki komutu çalıştırın:

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

Silinecek ve güncelleştirilecek şekilde myrepo deposunun ve tüm görüntülerin varsayılan davranışını geri yüklemek için aşağıdaki komutu çalıştırın:

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

Sonraki adımlar

Bu makalede, depoda görüntü sürümlerinin silinmesini veya güncelleştirilmelerini önlemek için az acr repository update komutunu kullanmayı öğrendinsiniz. Ek öznitelikler ayarlamak için az acr repository update komutu başvurusuna bakın.

Görüntü sürümü veya depo için ayarlanmış öznitelikleri görmek için az acr repository show komutunu kullanın.

Silme işlemleri hakkında ayrıntılı bilgi için bkz. Kapsayıcı görüntülerini Azure Container Registry.