Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Azure fejlesztői parancssori felület (azd) tárolólemezképeket hozhat létre, tehet közzé és helyezhet üzembe több Azure üzemeltetési szolgáltatásban. A konténer-munkafolyamat egy üzemeltetési célt, egy fordítási helyet és egy közzétételi módot kombinál. A legjobb kombináció az alkalmazástól, a csapata rendelkezésére álló eszközöktől, valamint attól függ, hogyan lépteti elő a képeket a környezetek között.
Ez a cikk az igényeinek megfelelő választásokat ismerteti. Összehasonlítja a következő döntéseket:
- Melyik Azure szolgáltatás üzemelteti a tárolót.
- Attól függően, hogy a
azdhelyileg hozza létre a rendszerképet, távolról az Azure Container Registryben (ACR) hozza létre, vagy egy meglévő rendszerképet használ. - Hogy a
azda rendszerképet együtt vagy külön lépésekben teszi-e közzé és telepíti.
A cikk az alábbi általános célú üzemeltetési szolgáltatásokat hasonlítja össze:
Először hasonlítsa össze az üzemeltetési célokat és a rendszerkép-összeállítási lehetőségeket. Miután megismerte ezeket a lehetőségeket, azokkal azonosíthat egy jelölt munkafolyamatot a Tárolótelepítési munkafolyamatok összehasonlítása szakaszban.
Tároló-üzemeltetési célok összehasonlítása
A host benne lévő azure.yaml tulajdonság azonosítja a tárolót üzembe helyező azd Azure szolgáltatást. Válassza ki a gazdagépet a rendszerkép létrehozási helyétől függetlenül.
| Host értéke | Azure üzemeltetési cél | Konténer-munkafolyamat | Considerations |
|---|---|---|---|
containerapp |
Azure Container Apps és Container Apps feladatai | Létrehozás projektből és Dockerfile-ból, vagy előre elkészített rendszerkép telepítése. | Támogatja a szolgáltatásszintű környezeti változókat és a Container Apps-specifikus üzembehelyezési stratégiákat. Használja ugyanazt a gazdagép értéket a Container Apps-feladatok esetén. |
appservice |
Linuxos webalkalmazás tárolókhoz az Azure App Service-ben | Létrehozás projektből és Dockerfile-ból, vagy előre elkészített lemezkép üzembe helyezése. | Az infrastruktúrának ki kell állítania egy linuxos tárolóra kész helyet, és konfigurálnia kell a felügyelt identitás hozzáférését az ACR-hez.
azd deploy csak a képhivatkozást frissíti. |
aks |
Azure Kubernetes Service | Hozzon létre egy képet, és telepítse a Kubernetes-jegyzékeket, a Helm-diagramokat vagy a Kustomize-konfigurációkat. | A legnagyobb fokú vezérlést biztosítja, de megköveteli a fürt és a Kubernetes-konfiguráció kezelését. A azd Helm vagy Kustomize eszközzel való használatához engedélyezni kell az alfa funkciójelzőket. |
A azure.ai.agent és ai.endpoint gazdagépek szintén támogatják a Docker-konfigurációt speciális Microsoft Foundry-használati esetekhez. Ezekhez a számítási feladatokhoz lásd: Üzembe helyezés Microsoft Foundry online végpontokon és a Microsoft Foundry-ügynök bővítményében.
Kép összeállítási beállításainak összehasonlítása
A szolgáltatásdefiníció határozza meg, hogy a(z) azd lemezképet épít-e, vagy egy meglévő lemezképből indul.
| Összeállítási lehetőség | Szükséges konfiguráció | A build futtatásának helye | Helyi konténermotor | A legjobban alkalmas |
|---|---|---|---|---|
| Helyi build |
project és opcionálisan docker |
Az Ön fejlesztési környezete vagy CI-futtatója | Szükséges | Gyors fejlesztési iterációk és olyan környezetek létrehozása, amelyek már biztosítják a Dockert vagy a Podmant. |
| ACR távoli build |
project és docker.remoteBuild: true |
Azure Container Registry | Nem szükséges, kivéve, ha azd egy távoli buildhiba után visszaáll |
Konzisztens felhőbeli buildek és környezetek helyi tárolómotor nélkül. A dokumentált távoli buildelési munkafolyamat az Azure Container Appsre irányul. |
Meglévő rendszerkép kezelése: azd |
image |
Nincs forrás build | Szükség lehet a rendszerkép életciklusával kapcsolatos műveletekhez | Azok a helyileg vagy egy regiszterben már meglévő lemezképek, amelyeket a azd le tud kérni, címkézni és fel tud tölteni. |
| Távoli képtovábbítás |
image és docker.imagePassthrough: true |
Nincs buildverzió | Nem kötelező | Teljesen minősített távoli lemezképek, amelyeket a gazdaerőforrásnak változtatás nélkül kell használnia. |
A beállításonkénti konfigurációs cikkek elolvasásakor tartsa szem előtt ezeket az elméleti különbségeket:
- Az előre összeállított rendszerkép a
imagetulajdonságot használja aprojecthelyett, és aazdtovábbra is le tudja kérni, címkézni és fel tudja tölteni azt. - A távoli ACR-buildek egy helyi Docker- vagy Podman-buildre esnek vissza, ha a távoli build meghiúsul, és elérhető egy támogatott tárolómotor.
-
A képtovábbításhoz teljesen minősített távoli képhivatkozás szükséges, amely tartalmaz egy regisztert; nem kombinálható a(z)
remoteBuildbeállítással, és nem támogatja aazd publish --from-packagevagyazd publish --tobeállítást, mert a(z)azdnem kezeli a képet.
Az egyes beállítások teljes konfigurálását a távoli buildek támogatása Azure Container Registry, külső tárolóregisztrációs adatbázisok használata, az App Service-tárolótelepítések Azure fejlesztői parancssori felülettel és a docker séma használatával című témakörben találhatja meg.
Tárolótelepítési munkafolyamatok összehasonlítása
Miután összehasonlította a tároló üzemeltetési céljainak összehasonlításában szereplő üzemeltetési célokat és a rendszerképek összeállítási beállításainak összehasonlításában szereplő összeállítási beállításokat, az alábbi táblázat segítségével azonosíthatja az igényeinek leginkább megfelelő munkafolyamatokat.
| Ha szükséges | Kezdje ezzel | Miért |
|---|---|---|
| Tárolóalapú alkalmazás üzembe helyezése kiszolgáló nélküli platformon | Azure Container Apps helyi összeállítással | Ez a munkafolyamat egy Dockerfile-alapú projektet hoz létre és helyez üzembe egy fejlesztési munkafolyamatban. |
| Építés a Docker vagy a Podman helyi telepítése nélkül | Azure Container Apps távoli ACR-builddel | Az ACR az Azure-ban a projektből és a Dockerfile-ból hozza létre a lemezképet. |
| Egy másik buildrendszer által előállított rendszerkép üzembe helyezése | Azure Container Apps vagy App Service előre összeállított képpel | A image tulajdonság a buildelendő forráskód helyett a meglévő rendszerképet azonosítja. |
| Használjon fel újra egy távoli rendszerképet anélkül, hogy lekérné, címkézné vagy feltöltené | Azure Container Apps közvetlen képtovábbítással |
azd közvetlenül a gazdaerőforrásnak továbbítja a teljesen minősített lemezképhivatkozást. |
| Hagyományos webalkalmazás futtatása Linux-tárolóként | Tárolókhoz készült webalkalmazás az Azure App Service-ben | Az App Service egy integrált web hosting platformot biztosít, miközben az infrastruktúra szabályozza a tárolóra kész hely konfigurációját. |
| Kubernetes-manifesztumok és a fürtkonfiguráció kezelése | Azure Kubernetes Service (AKS) |
azd létrehozhatja és közzéteheti a rendszerképet, majd üzembe helyezheti a Kubernetes-jegyzékeket, a Helm-diagramokat vagy a Kustomize-konfigurációkat. |
| Hozza létre egyszer, és ugyanazt az image-et léptesse tovább a környezetek között |
azd publish, majd azd deploy --from-package |
A közzététel és az üzembe helyezés külön történik, így minden környezet ugyanazt a rendszerképet kapja. |
Minden sor a tároló-üzemeltetési célok összehasonlítása elem üzemeltetési lehetőségeit és a rendszerkép-létrehozási lehetőségek összehasonlítása elem buildelési lehetőségeit egyesíti, kiindulási pontként. Adja meg a választását a azure.yaml területen, és hagyja, hogy a Bicep- vagy Terraform-fájljai kiépítsék a megfelelő üzemeltetési és tárolóregiszter-erőforrásokat.
A minimális szolgáltatásdefiníció beállítja a host elemet, a buildforrást és a Dockerfile-t:
services:
api:
project: ./src/api
language: docker
host: containerapp
docker:
path: ./Dockerfile
Ha ezt a definíciót egy másik gazdagéphez szeretné igazítani, módosítsa az host értéket, és kövesse az állomásonkénti konfigurációs szerződést:
- Üzembe helyezés az Azure Container Appsben az Azure Developer CLI használatával
- App Service-tárolótelepítések Azure fejlesztői parancssori felülettel
- A Helm és a Kustomize támogatása
Közzétételi és üzembehelyezési parancsok összehasonlítása
Miután kiválasztotta a hosztot és a buildbeállítást, válassza ki, hogy a lemezkép közzétételét és a telepítést egyesíti, vagy külön kezeli.
| Command | Képműveletek | Azure erőforrásművelet | Használja amikor |
|---|---|---|---|
azd up |
Fordítás és feltöltés | Kiépítés és üzembe helyezés | Létre szeretné hozni vagy frissíteni szeretné a teljes környezetet, és egyetlen munkafolyamatban szeretné üzembe helyezni az alkalmazást. |
azd deploy |
Összeállítás és feltöltés | Üzembe helyezés | Az infrastruktúra már létezik, és alkalmazásmódosításokat szeretne üzembe helyezni. |
azd publish |
Fordítás és feltöltés | Nincs | Egy beállításjegyzékbeli összetevőt szeretne létrehozni anélkül, hogy üzembe helyezné.
azd publish támogatja a Container Apps és az AKS-szolgáltatásokat. |
azd publish --from-package <image> |
Meglévő helyi kép feltöltése | Nincs | Egy másik folyamat építette ki a képet, amelyet közzé szeretne azd tenni. |
azd deploy --from-package <image> |
Nincs | Üzembe helyezés | Egy adott rendszerképet újraépítés nélkül szeretne üzembe helyezni. |
Közzétehet például egy verziószámozott lemezképet, és üzembe helyezheti ugyanazt a lemezképet egy másik környezetben:
azd publish api --to myregistry.azurecr.io/my-api:v1.0.0
azd env select production
azd deploy api --from-package myregistry.azurecr.io/my-api:v1.0.0
Ez a munkafolyamat megakadályozza az egyes környezetek rendszerképeinek újraépítése során fellépő különbségeket. A teljes előléptetési munkafolyamatért tekintse meg Azure fejlesztői parancssori felület közzétételi munkafolyamatait.