Azure Container Apps, sizin için Kubernetes ve kapsayıcı düzenleme ayrıntılarını yönetir. Azure Container Apps'deki kapsayıcılar sizin seçtiğiniz çalışma zamanını, bilgisayar dilini veya geliştirme yığınını kullanabilir.
Azure Container Apps şu desteği destekler:
Linux tabanlı x86-64 (linux/amd64) kapsayıcı görüntüsü
Herhangi bir genel veya özel kapsayıcı kayıt defterinden kapsayıcılar
Uygulamalar, kapsayıcı görüntüsünü ve diğer ayarları tanımlamak için yapılandırma bölümünü kullanır template . Yapılandırma bölümünde yapılan template değişiklikler yeni bir kapsayıcı uygulaması düzeltmesini tetikler.
Bir kapsayıcı kilitlenirse otomatik olarak yeniden başlatılır.
İşlerin özellikleri şunlardır:
İş yürütmeleri, her yürütme başladığında kapsayıcı görüntüsünü ve diğer ayarları tanımlamak için yapılandırma bölümünü kullanır template .
Kapsayıcı sıfır olmayan bir çıkış koduyla çıkarsa, iş yürütme başarısız olarak işaretlenir. Başarısız yürütmeleri yeniden denemek için bir iş yapılandırabilirsiniz.
Yapılandırma
Çoğu kapsayıcı uygulamasında tek bir kapsayıcı vardır. Gelişmiş senaryolarda, bir uygulamanın sepet ve giriş kapsayıcıları da olabilir. Kapsayıcı uygulaması tanımında, ana uygulama ve sepet kapsayıcıları bölümündeki dizide containersproperties.template listelenir ve init kapsayıcıları dizide initContainers listelenir. Aşağıdaki alıntı, bir uygulamanın kapsayıcılarını ayarlarken kullanılabilen yapılandırma seçeneklerini gösterir.
Kapsayıcınız için geçici veya kalıcı depolama birimleri tanımlayabilirsiniz. Depolama birimleri hakkında daha fazla bilgi için bkz . Azure Container Apps'te depolama bağlamalarını kullanma.
probes
Kapsayıcıda etkinleştirilen sistem durumu yoklamaları dizisi.
Yoklama ayarları hakkında daha fazla bilgi için bkz . Azure Container Apps'te sistem durumu yoklamaları.
vCPU ve bellek ayırma gereksinimleri
Tüketim planını kullandığınızda, bir kapsayıcı uygulamasındaki tüm kapsayıcılara ayrılan toplam CPU ve bellek aşağıdaki birleşimlerden birine kadar eklenmelidir.
vCPU'lar (çekirdekler)
Bellek
0.25
0.5Gi
0.5
1.0Gi
0.75
1.5Gi
1.0
2.0Gi
1.25
2.5Gi
1.5
3.0Gi
1.75
3.5Gi
2.0
4.0Gi
2.25
4.5Gi
2.5
5.0Gi
2.75
5.5Gi
3.0
6.0Gi
3.25
6.5Gi
3.5
7.0Gi
3.75
7.5Gi
4.0
8.0Gi
Not
Tüketim planını yalnızca Tüketim ortamında kullanan uygulamalar en fazla 2 çekirdek ve 4Gi bellekle sınırlıdır.
Birden çok kapsayıcı
Gelişmiş senaryolarda, tek bir kapsayıcı uygulamasında birden çok kapsayıcı çalıştırabilirsiniz. Bu deseni yalnızca kapsayıcılarınızın sıkı bir şekilde bağlı olduğu belirli örneklerde kullanın.
Çoğu mikro hizmet senaryosunda en iyi yöntem, her hizmeti ayrı bir kapsayıcı uygulaması olarak dağıtmaktır.
Aynı kapsayıcı uygulamasındaki birden çok kapsayıcı sabit disk ve ağ kaynaklarını paylaşır ve aynı uygulama yaşam döngüsünü yaşar.
Sepet desenini uygulamak için tek bir kapsayıcı uygulamasında birden çok kapsayıcı tanımlayabilirsiniz.
Sepet kapsayıcısı örnekleri şunlardır:
Paylaşılan bir birimde birincil uygulama kapsayıcısından günlükleri okuyan ve bunları bir günlük hizmetine ileten bir aracı.
Paylaşılan bir birimde birincil uygulama kapsayıcısı tarafından kullanılan bir önbelleği yenileyen bir arka plan işlemi.
Bu senaryolar örnektir ve sepet uygulayabileceğiniz tek yolları temsil etmemektedir.
Kapsayıcı uygulamasında birden çok kapsayıcı çalıştırmak için, kapsayıcı uygulaması şablonunun dizisine containers birden fazla kapsayıcı ekleyin.
Init kapsayıcıları
Kapsayıcı uygulamasında bir veya daha fazla init kapsayıcısı tanımlayabilirsiniz. Init kapsayıcıları birincil uygulama kapsayıcısı öncesinde çalışır ve verileri indirme veya ortamı hazırlama gibi başlatma görevlerini gerçekleştirmek için kullanılır.
Init kapsayıcıları, kapsayıcı uygulaması şablonunun dizisinde initContainers tanımlanır. Kapsayıcılar dizide tanımlandığı sırayla çalışır ve birincil uygulama kapsayıcısı başlamadan önce başarıyla tamamlanması gerekir.
Not
Ayrılmış planı kullanan veya Yalnızca tüketim ortamında çalışan uygulamalarda init kapsayıcıları, çalışma zamanında yönetilen kimliğe erişemez.
Kapsayıcı kayıt defterleri
Container Apps yapılandırmasında kimlik bilgileri sağlayarak özel kayıt defterlerinde barındırılan görüntüleri dağıtabilirsiniz.
Kapsayıcı kayıt defteri kullanmak için, kapsayıcı uygulaması kaynak şablonunun registries bölümündeki dizide properties.configuration kayıt defterini tanımlarsınız. alanı, passwordSecretRef parolayı tanımladığınız dizi adında gizli secrets dizinin adını tanımlar.
Kullanıcı adı ve parola kullanmak yerine Azure Container Registry ile kimlik doğrulaması yapmak için Azure yönetilen kimliği kullanabilirsiniz. Daha fazla bilgi için bkz . Azure Container Apps'te yönetilen kimlikler.
Yönetilen kimliği bir kayıt defteriyle kullanmak için, kimliğin uygulamada etkinleştirilmesi ve kayıt defterinde rol atanması acrPull gerekir. Kayıt defterini yapılandırmak için, kullanıcı tarafından atanan bir kimlik için yönetilen kimlik kaynak kimliğini veya system kayıt defterinin özelliğindeki identity sistem tarafından atanan kimliği kullanın. Yönetilen kimlik kullanırken kullanıcı adı ve parola yapılandırma.
Azure Container Apps'te aşağıdaki sınırlamalar vardır:
Ayrıcalıklı kapsayıcılar: Azure Container Apps, konak düzeyinde erişime sahip ayrıcalıklı kapsayıcılar moduna izin vermez.
İşletim sistemi: Linux tabanlı (linux/amd64) kapsayıcı görüntüleri gereklidir.
En büyük görüntü boyutu:
Tüketim iş yükü profili, her uygulama veya iş çoğaltması için toplam 8 GB'a kadar olan kapsayıcı görüntülerini destekler.
Ayrılmış iş yükü profilleri daha büyük kapsayıcı görüntülerini destekler. Ayrılmış iş yükü profili birden çok uygulama veya iş çalıştırabildiğinden, birden çok kapsayıcı görüntüsü kullanılabilir disk alanını paylaşır. Desteklenen gerçek görüntü boyutu, diğer uygulamalar ve işler tarafından kullanılan kaynaklara göre değişir.