Azure Container Apps za vás spravuje podrobnosti o orchestraci Kubernetes a kontejnerů. Kontejnery ve službě Azure Container Apps můžou využívat jakýkoli modul runtime a programovací jazyk nebo libovolnou vývojovou sadu.
Azure Container Apps podporuje:
Libovolná image kontejneru x86-64linux/amd64 () založená na Linuxu
Kontejnery z libovolného veřejného nebo privátního registru kontejneru
Aplikace používají template konfigurační oddíl k definování image kontejneru a dalších nastavení. Změny v oddílu template konfigurace aktivují novou revizi aplikace kontejneru.
Pokud dojde k chybovému ukončení kontejneru, automaticky se restartuje.
Mezi funkce úloh patří:
Spuštění úloh používají template konfigurační oddíl k definování image kontejneru a dalších nastavení při každém spuštění.
Pokud se kontejner ukončí s nenulovým ukončovacím kódem, označí se spuštění úlohy jako neúspěšné. Úlohu můžete nakonfigurovat tak, aby se zopakovala neúspěšná spuštění.
Konfigurace
Většina aplikací typu kontejner má jeden kontejner. V pokročilýchscénářch V definici aplikace kontejneru jsou hlavní aplikace a její kontejnery sajdkáře uvedené v containers poli v properties.template části a kontejnery inicializace jsou uvedeny v initContainers poli. Následující výňatek ukazuje dostupné možnosti konfigurace při nastavování kontejnerů aplikace.
Požadavky na přidělení virtuálních procesorů a paměti
Při použití plánu Consumption se celkový počet procesorů a paměti přidělených všem kontejnerům v aplikaci kontejneru musí sčítat do jedné z následujících kombinací.
virtuální procesory (jádra)
Memory (Paměť)
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
Poznámka
Aplikace využívající plán Consumption pouze v prostředí Consumption jsou omezené na maximálně 2 jádra a 4Gi paměti.
Více kontejnerů
V pokročilých scénářích můžete v jedné aplikaci kontejneru spustit více kontejnerů. Tento vzor použijte pouze v konkrétních instancích, ve kterých jsou kontejnery úzce svázané.
Pro většinu scénářů mikroslužeb je osvědčeným postupem nasadit každou službu jako samostatnou aplikaci kontejneru.
Více kontejnerů ve stejné aplikaci kontejneru sdílí pevný disk a síťové prostředky a dochází ke stejnému životnímu cyklu aplikace.
V jedné aplikaci kontejneru můžete definovat více kontejnerů pro implementaci vzoru sajdkáře.
Mezi příklady kontejnerů sajdkárů patří:
Agent, který čte protokoly z primárního kontejneru aplikace na sdíleném svazku a předává je do služby protokolování.
Proces na pozadí, který aktualizuje mezipaměť používanou primárním kontejnerem aplikace ve sdíleném svazku.
Tyto scénáře jsou příklady a nepředstavují jediný způsob implementace sajdkáře.
Pokud chcete v aplikaci kontejneru spustit více kontejnerů, přidejte do pole šablony aplikace kontejneru více kontejnerů containers .
Inicializační kontejnery
V aplikaci kontejneru můžete definovat jeden nebo více inicializačních kontejnerů . Inicializační kontejnery běží před primárním kontejnerem aplikace a používají se k provádění inicializačních úloh, jako je stahování dat nebo příprava prostředí.
Inicializační kontejnery jsou definovány v initContainers poli šablony aplikace kontejneru. Kontejnery běží v pořadí, v jakém jsou definovány v poli, a musí se úspěšně dokončit před spuštěním primárního kontejneru aplikace.
Poznámka
Inicializační kontejnery v aplikacích používajících vyhrazený plán nebo spuštěné pouze v prostředí Consumption nemají přístup ke spravované identitě za běhu.
Registry kontejnerů
Image hostované v privátních registrech můžete nasadit zadáním přihlašovacích údajů v konfiguraci Container Apps.
Pokud chcete použít registr kontejneru, definujete registr v registries poli v properties.configuration části šablony prostředku aplikace kontejneru. Pole passwordSecretRef identifikuje název tajného kódu v secrets názvu pole, ve kterém jste definovali heslo.
Docker Hub omezuje počet stahování imagí Dockeru. Po dosažení limitu se kontejnery ve vaší aplikaci nespustí. Pokud se chcete tomuto problému vyhnout, použijte registr s dostatečnými limity, jako je Azure Container Registry .
Spravovaná identita se službou Azure Container Registry
Spravovanou identitu Azure můžete použít k ověření ve službě Azure Container Registry místo použití uživatelského jména a hesla. Další informace najdete v tématu Spravované identity v Azure Container Apps.
Pokud chcete používat spravovanou identitu s registrem, musí být v aplikaci povolená identita a musí mít přiřazenou acrPull roli v registru. Ke konfiguraci registru použijte ID prostředku spravované identity pro identitu přiřazenou uživatelem nebo system pro identitu přiřazenou systémem ve identity vlastnosti registru. Při použití spravované identity nekonfigurujte uživatelské jméno a heslo.
Další informace o konfiguraci identit přiřazených uživatelem najdete v tématu Přidání identity přiřazené uživatelem.
Omezení
Azure Container Apps má následující omezení:
Privilegované kontejnery: Azure Container Apps neumožňuje režim privilegovaných kontejnerů s přístupem na úrovni hostitele.
Operační systém: Vyžadují se image kontejnerů založené na Linuxu (linux/amd64).
Maximální velikost obrázku:
Profil úlohy Consumption podporuje image kontejnerů celkem až 8 GB pro každou aplikaci nebo repliku úlohy.
Vyhrazené profily úloh podporují větší image kontejnerů. Vzhledem k tomu, že profil vyhrazené úlohy může spouštět více aplikací nebo úloh, sdílí několik imagí kontejnerů dostupné místo na disku. Skutečná podporovaná velikost image se liší v závislosti na prostředcích využívaných jinými aplikacemi a úlohami.
Naučte se vytvářet, nasazovat, škálovat a spravovat kontejnerizované aplikace nativní pro cloud pomocí Azure Container Apps, Azure Container Registry a Azure Pipelines. (AZ-2003)