Azure Container Registry için en iyi yöntemler

Bu en iyi yöntemleri takip etmek, kapsayıcı görüntülerini ve diğer yapıtları depolamak ve dağıtmak için Azure'da özel kayıt defterinizin performansını ve uygun maliyetli kullanımını en üst düzeye çıkarmanıza yardımcı olabilir.

Kayıt defteri kavramları hakkında arka plan bilgi için bkz. Kayıt defterleri, depolar ve görüntüler hakkında. Kayıt defterinize Öneriler ve sürüm görüntülerine stratejiler için kapsayıcı görüntülerini etiketleme ve sürümleme hakkında daha fazla bilgi için bkz.

Yakın ağ dağıtımı

Kapsayıcı kayıt defterinizi, kapsayıcıları dağıttığınız Azure bölgesinde oluşturun. Kayıt defterinizin ağ açısından kapsayıcı konaklarınıza yakın bir bölgeye yerleştirilmesi hem gecikmeyi hem de maliyeti düşürmeye yardımcı olabilir.

Yakın ağ dağıtımı, özel kapsayıcı kayıt defteri kullanmanın birincil nedenlerinden biridir. Docker görüntülerinin kademeli dağıtıma imkan tanıyan etkili bir katman yapısı vardır. Bununla birlikte, yeni düğümlerin belirli bir görüntü için gereken tüm katmanları çekmesi gerekir. Bu ilk docker pull hızla büyüyerek birkaç gigabayta ulaşabilir. Dağıtımınıza yakın özel bir kayıt defterinin olması bu ağ gecikmesini en aza indirir. Buna ek olarak, Azure dahil tüm genel bulutlar ağ çıkışı ücretleri uygular. Bir veri merkezinden diğerine görüntü çekmek, gecikmeye ek olarak ağ çıkışı ücretlerine yol açar.

Çok bölgeli dağıtımları coğrafi olarak çoğaltma

Birden çok bölgeye kapsayıcı dağıtıyorsanız Azure Container Registry'nin coğrafi çoğaltma özelliğini kullanın. İster yerel veri merkezlerinden küresel müşterilere hizmet sunuyor olun ister geliştirme takımınız farklı konumlarda çalışıyor olsun, kayıt defterinizi coğrafi olarak çoğaltarak kayıt defteri yönetimini basitleştirebilir ve gecikmeyi en aza indirebilirsiniz. Ayrıca, görüntülerin ne zaman sevk edildikleri gibi belirli çoğaltmalarda olayları size bildirmek için bölgesel web kancaları yapılandırabilirsiniz.

Coğrafi çoğaltma, kayıt defterleriyle Premium kullanılabilir. Coğrafi çoğaltma özelliğini kullanmayı öğrenmek için Azure Container Registry’de coğrafi çoğaltma başlıklı üç bölümlü öğreticiye bakın.

Çekme performansını en üst düzeye çıkarma

Görüntüleri dağıtımlarınıza yakın yerleştirmenin yanı sıra, görüntülerinizi kendi özellikleri çekme performansını etkileyebilir.

  • Görüntü boyutu - Gereksiz katmanları kaldırarak veya katmanların boyutunu azaltarak görüntü boyutlarını en aza indirme. Görüntü boyutunu azaltmanın bir yolu, yalnızca gerekli çalışma zamanı bileşenlerini dahil etmek için çok aşamalı Docker derleme yaklaşımını kullanmaktır.

    Ayrıca görüntüde daha hafif bir temel işletim sistemi görüntüsü olup olmadığını da kontrol edin. Ayrıca belirli temel görüntüleri önbelleğe alan Azure Container Instances gibi bir dağıtım ortamı kullanıyorsanız, önbelleğe alınan görüntülerden biri için görüntü katmanını değiştirip değiştire olmadığınızı kontrol edin.

  • Katman sayısı - Kullanılan katman sayısını dengeler. Çok az sayıda makineniz varsa, konakta katman yeniden kullanımından ve önbelleğe almadan yararlanamayabilirsiniz. Çok fazla ve dağıtım ortamınız daha fazla zaman harcayarak sıkıştırarak ve sıkıştırarak. Beş ile 10 katman arasında en uygun katmandır.

Ayrıca, performans Azure Container Registry hizmet katmanını seçin. Premium katmanı, yüksek hacimli dağıtımlar olduğunda en yüksek bant genişliğine ve en yüksek eşzamanlı okuma ve yazma işlemleri oranına sahiptir.

Depo ad alanları

Depo ad alanlarını kullanarak, tek bir kayıt defterinin kuruluş içindeki birden çok grup arasında paylaşımına izin veebilirsiniz. Kayıt defterleri farklı dağıtımlarla ve takımlarla paylaşılabilir. İç içe ad alanlarını destekleyen Azure Container Registry, grup yalıtımı imkanı sunar. Ancak, kayıt defteri hiyerarşi olarak değil, tüm depoları bağımsız olarak yönetir.

Örneğin, aşağıdaki kapsayıcı görüntüsü etiketlerini göz önünde bulundurun. gibi şirket genelinde kullanılan görüntüler kök ad alanına yerleştirilirken, Ürünler ve Pazarlama gruplarına ait kapsayıcı görüntüleri kendi ad aspnetcore alanlarını kullanır.

  • contoso.azurecr.io/aspnetcore:2.0
  • contoso.azurecr.io/products/widget/web:1
  • contoso.azurecr.io/products/bettermousetrap/refundapi:12.3
  • contoso.azurecr.io/marketing/2017-fall/concertpromotions/campaign:218.42

Ayrılmış kaynak grubu

Kapsayıcı kayıt defterleri birden çok kapsayıcı ana bilgisayar arasında kullanılan kaynaklar olduğundan, bir kayıt defteri kendi kaynak grubunda bulun olmalıdır.

Azure Container Instances gibi belirli bir konak türüyle denemeler yapmakla birlikte, büyük olasılıkla bitiren kapsayıcı örneğini silmek istemeniz gerekir. Bununla birlikte, Azure Container Registry’ye gönderdiğiniz görüntü koleksiyonunu korumak da isteyebilirsiniz. Kayıt defterinizi kendi kaynak grubuna yerleştirerek, kapsayıcı örneğinin kaynak grubunu silerken yanlışlıkla kayıt defterindeki görüntü koleksiyonunu da silme riskini en aza indirirsiniz.

Kimlik doğrulaması ve yetkilendirme

Bir Azure kapsayıcı kayıt defteri ile kimlik doğrulama için iki ana senaryo vardır: bireysel kimlik doğrulama ve hizmet (veya "gözetimsiz") kimlik doğrulaması. Aşağıdaki tabloda, bu senaryolara kısa bir genel bakış ve her biri için önerilen kimlik doğrulama yöntemi sağlanmıştır.

Tür Örnek senaryo Önerilen metot
Bireysel kimlik Geliştirme makinesinden görüntü çeken veya gönderen bir geliştirici. az acr login
Gözetimsiz kimlik/hizmet kimliği Kullanıcıyla doğrudan ilgili olmayan derleme ve dağıtım işlem hatları. Hizmet sorumlusu

Bu ve diğer kimlik doğrulama senaryoları hakkında ayrıntılı bilgi Azure Container Registry bkz. Azure kapsayıcı kayıt defteriyle kimlik doğrulama.

Azure Container Registry, farklı kimliklere görev ve ayrıcalık dağıtmak için kuruluşta güvenlik uygulamalarını destekler. Rol tabanlı erişim denetimi kullanarak,farklı kayıt defteri işlemleri gerçekleştiren farklı kullanıcılara, hizmet sorumlularına veya diğer kimliklere uygun izinleri attayın. Örneğin, derleme işlem hattında kullanılan bir hizmet sorumlusuna itme izinleri atacak ve dağıtım için kullanılan farklı bir kimliğe çekme izinleri atayabilirsiniz. Belirli depolara daha ince ve sınırlı erişim için belirteçler oluşturun.

Kayıt defteri boyutunu yönetme

Her kapsayıcı kayıt defteri hizmet katmanının depolama kısıtlamaları tipik bir senaryoyla uyumlu olacak şekilde tasarlanmıştır: Başlarken temel, üretim uygulamalarının çoğu için Standart ve hiper ölçekli performans ve coğrafi çoğaltma için Premium. Kayıt defterinizin kullanım ömrü boyunca kullanılmayan içerikleri düzenli olarak silerek boyutunu yönetmeniz gerekir.

Kayıt defterinize depolama ve diğer kaynakların geçerli tüketimini görüntülemek için az acr show-usage Azure CLI komutunu kullanın:

az acr show-usage --resource-group myResourceGroup --name myregistry --output table

Örnek çıktı:

NAME                        LIMIT         CURRENT VALUE    UNIT
--------------------------  ------------  ---------------  ------
Size                        536870912000  215629144        Bytes
Webhooks                    500           1                Count
Geo-replications            -1            3                Count
IPRules                     100           1                Count
VNetRules                   100           0                Count
PrivateEndpointConnections  10            0                Count

Geçerli depolama alanı kullanımını kayıt defterinizin Genel Bakış bilgisinde de bulabilirsiniz Azure portal:

Azure portalındaki kayıt defteri kullanım bilgileri

Not

Coğrafi olarak çoğaltılmış kayıt defterinde, giriş bölgesi için depolama alanı kullanımı gösterilir. Tüketilen toplam kayıt defteri depolama alanı için çoğaltma sayısıyla çarpın.

Görüntü verilerini silme

Azure Container Registry, kapsayıcı kayıt defterinize görüntü verilerini silmek için çeşitli yöntemleri destekler. Görüntüleri etiket veya bildirim özetine göre silebilir veya deponun tamamını silebilirsiniz.

Etiketsiz (bazen "dalgalı" veya "yalnız") görüntüler de dahil olmak üzere kayıt defterinize görüntü verilerini silme hakkında ayrıntılı bilgi için bkz. Azure Container Registry. Ayrıca etiketsiz bildirim için bir saklama ilkesi de ayarlayın.

Sonraki adımlar

Azure Container Registry farklı özellikler sağlayan çeşitli katmanlarda (SKU olarak da adlandırılan) kullanılabilir. Kullanılabilir hizmet katmanları hakkında ayrıntılı bilgi için bkz. Azure Container Registry katmanlarını seçin.

Kapsayıcı kayıt defterlerinin güvenlik duruşlarını geliştirme önerileri için bkz. Azure Güvenlik Temeli Azure Container Registry.