Az Azure Container Apps üzembe helyezése az az containerapp up paranccsal

A az containerapp up (vagy up) paranccsal helyezhet üzembe alkalmazásokat az Azure Container Appsben egy meglévő rendszerképből, helyi forráskódból vagy GitHub-adattárból. Ha ezt az egyetlen parancsot használja, percek alatt üzembe helyezheti és futtathatja a tárolóalkalmazást.

A parancs helyi forráskód vagy GitHub-adattár megadásakor létrehozhat és leküldhet egy tárolórendszerképet az Azure Container Registrybe. Amikor GitHub-adattárból dolgozik, a parancs létrehoz egy GitHub Actions-munkafolyamatot, amely automatikusan létrehoz és leküld egy új tárolórendszerképet a GitHub-adattár módosításainak véglegesítésekor.

Ez a cikk bemutatja, hogyan helyezhet üzembe egy tárolóalkalmazást meglévő lemezképből, helyi forráskódból és GitHub-adattárból a parancs használatával.

Előfeltételek

Követelmény Utasítások
Azure-fiók Ha nem rendelkezik ilyen fiókkal, hozzon létre ingyenes fiókot. Az Azure-előfizetésnek közreműködői vagy tulajdonosi szerepkört kell biztosítania. Részletes információkért lásd: Azure-szerepkörök hozzárendelése az Azure Portal használatával.
Azure CLI Telepítse az Azure CLI-t.
Egy GitHub-fiók Ha egy képet szeretne használni egy GitHub-adattárban, regisztráljon egy ingyenes GitHub-fiókra.
Helyi forráskód Ha helyi forráskódból szeretne lemezképet létrehozni, helyezze a kódot egy helyi könyvtárba.
Meglévő rendszerkép Ha meglévő image-et szeretne használni, jegyezze fel a regisztrációs kiszolgálót, a kép nevét és címkéjét. Ha magánregisztrációs adatbázist használ, jegyezze fel a hitelesítő adatait is.

Meglévő erőforrások használata

A up parancs létrehozhat erőforrásokat, vagy használhatja a meglévőket, például:

  • Egy erőforráscsoport.
  • Tárolóregisztrációs adatbázis.
  • Container Apps-környezet és Log Analytics-munkaterület.
  • A tárolóalkalmazás.

Ha testre kell szabnia a Container Apps-környezetet, először használja a parancsot a az containerapp env create környezet létrehozásához és testreszabásához. Akkor, amikor futtatja a up parancsot, használja a --environment beállítást a testre szabott környezet megadásához.

Ha nem ad meg meglévő környezetet, a up parancs az erőforráscsoportban keres egyet. Ha a parancs talál egy környezetet, azt a környezetet használja. Ha a parancs nem talál környezetet, létrehoz egy Log Analytics-munkaterületet.

Az az containerapp up parancsról és annak beállításairól további információért lásd az containerapp up.

Az Azure CLI-környezet beállítása

  1. Az Azure CLI használatával jelentkezzen be az Azure-ba.

    az login
    
  2. Telepítse a Container Apps bővítményt az Azure CLI-hez.

    az extension add --name containerapp --upgrade
    
  3. Regisztrálja a Microsoft.App névteret.

    az provider register --namespace Microsoft.App
    
  4. Regisztrálja a szolgáltatót Microsoft.OperationalInsights a Log Analytics-munkaterülethez.

    az provider register --namespace Microsoft.OperationalInsights
    

Üzembe helyezés meglévő lemezképből

Üzembe helyezhet egy olyan tárolóalkalmazást, amely meglévő lemezképet használ egy nyilvános vagy privát tárolóregisztrációs adatbázisban. Ha egy magántárból telepít, meg kell adnia a hitelesítő adatait a(z) --registry-server, --registry-username és --registry-password opciók használatával.

Az alábbi példakóddal tárolóalkalmazást helyezhet üzembe egy meglévő lemezképből. A parancs futtatása előtt cserélje le a szögletes zárójelben lévő helyőrzőket az értékekre.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
  --ingress external \
  --target-port <PORT_NUMBER> 

Ez a parancs a következő műveleteket hajtja végre:

  1. Létrehoz egy erőforráscsoportot.
  2. Létrehoz egy környezetet és egy Log Analytics-munkaterületet.
  3. Létrehoz és üzembe helyez egy tárolóalkalmazást, amely lekéri a rendszerképet egy nyilvános beállításjegyzékből.
  4. Beállítja ingress a tárolóalkalmazás értékét úgy, hogy external a célport a megadott értékre legyen állítva.

A parancs használatával up újra üzembe helyezhet egy tárolóalkalmazást. Ha új lemezképet szeretne újból üzembe helyezni, a beállítással --image adjon meg egy új képet. Győződjön meg arról, hogy a beállítások és --resource-group a --environment beállítások az eredeti üzembe helyezés értékeire vannak állítva.

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --image <REGISTRY_SERVER>/<IMAGE_NAME>:<TAG> \
  --resource-group <RESOURCE_GROUP_NAME> \
  --environment <ENVIRONMENT_NAME> \
  --ingress external \
  --target-port <PORT_NUMBER> 

Üzembe helyezés helyi forráskódból

Ha a up parancsot helyi forrásból telepíti, az létrehozza a tárolórendszerképet, leküldi azt egy beállításjegyzékbe, és üzembe helyezi a tárolóalkalmazást. Ha nem ad meg beállításjegyzéket, a parancs létrehoz egyet a Container Registryben.

A parancs Docker-fájllal vagy anélkül is létrehozhatja a lemezképet. Dockerfile-t nem használó buildekben a következő nyelvek támogatottak:

  • .NET
  • Node.js
  • PHP
  • Python

A következő példakód használatával helyezhet üzembe egy tárolóalkalmazást a helyi forráskódból:

    az containerapp up \
      --name <CONTAINER_APP_NAME> \
      --source <SOURCE_DIRECTORY>\
      --ingress external 

Ez a parancs a következő műveleteket hajtja végre:

  1. Létrehoz egy erőforráscsoportot.
  2. Létrehoz egy környezetet és egy Log Analytics-munkaterületet.
  3. Létrehoz egy regisztrációs adatbázist a Container Registry-ben.
  4. Létrehozza a tárolórendszerképet (ha létezik, a Dockerfile használatával).
  5. Leküldi a rendszerképet a beállításjegyzékbe.
  6. Létrehozza és üzembe helyezi a tárolóalkalmazást.

Ha a Dockerfile tartalmazza az EXPOSE utasítást, a parancs konfigurálja up a tárolóalkalmazás bejövő és célportját a Dockerfile információinak használatával. Ha a Docker-fájlon keresztül konfigurálja a bejövő forgalmat, vagy az alkalmazás nem igényel bejövő forgalmat, kihagyhatja a --ingress beállítást.

A parancs kimenete tartalmazza a tárolóalkalmazás URL-címét.

Ha a parancs arról számol be, hogy a Cloud Build-ügynökre vár, de nem válaszol, egy GitHub-átmeneti hiba lehet a probléma forrása. A helyzet megoldásához futtassa újra a parancsot.

Ha hiba történt, a parancsot újra futtathatja a --debug további információk lekérésének lehetőségével. Ha a build dockerfile nélkül meghiúsul, megpróbálhat hozzáadni egy Dockerfile-t, és újra futtatni a parancsot.

Ha a az containerapp up parancs használatával szeretné újratelepíteni a tárolóalkalmazást egy frissített képpel, használja a --resource-group és --environment opciókat. Tárolóalkalmazás helyi forráskódból való ismételt üzembe helyezéséhez hajtsa végre a következő lépéseket:

  1. Módosítsa a forráskódot.

  2. Futtassa az alábbi parancsot:

    az containerapp up \
      --name <CONTAINER_APP_NAME> \
      --source <SOURCE_DIRECTORY> \
      --resource-group <RESOURCE_GROUP_NAME> \
      --environment <ENVIRONMENT_NAME>
    

Üzembe helyezés GitHub-adattárból

Amikor a az containerapp up parancsot egy GitHub-adattárból telepíti, az létrehoz egy GitHub Actions-munkafolyamatot, amely létrehozza a tárolólemezképet, leküldi azt egy beállításjegyzékbe, és üzembe helyezi a tárolóalkalmazást. Ha nem ad meg egy regisztert, a parancs létrehoz egyet a „Container Registry”-ben.

A rendszerkép létrehozásához Dockerfile szükséges. Ha a Dockerfile tartalmazza az EXPOSE utasítást, a parancs konfigurálja a tárolóalkalmazás bejövő és célportját a Dockerfile információinak használatával.

A következő példakód használatával helyezhet üzembe egy tárolóalkalmazást egy GitHub-adattárból:

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --repo <GITHUB_REPOSITORY_URL> \
  --ingress external 

Ez a parancs a következő műveleteket hajtja végre:

  1. Létrehoz egy erőforráscsoportot.
  2. Létrehoz egy környezetet és egy Log Analytics-munkaterületet.
  3. Létrehoz egy regisztert a Container Registryben.
  4. A tárolórendszerképet a Dockerfile használatával hozza létre.
  5. Leküldi a rendszerképet a beállításjegyzékbe.
  6. Létrehozza és üzembe helyezi a tárolóalkalmazást.
  7. Létrehoz egy GitHub Actions-munkafolyamatot a tárolórendszerkép létrehozásához és a tárolóalkalmazás üzembe helyezéséhez, amikor a jövőbeli módosítások le lesznek küldve a GitHub-adattárba.

Ha a parancs meghiúsul, mert nem hozható létre szolgáltatásnév, manuálisan is létrehozhat egy szolgáltatásnevet az Azure-ban. Ezután adatokat adhat át a parancsnak:

az containerapp up \
  --name <CONTAINER_APP_NAME> \
  --repo <GITHUB_REPOSITORY_URL> \
  --service-principal-client-id "$SERVICE_PRINCIPAL_CLIENT_ID" \
  --service-principal-client-secret "$SERVICE_PRINCIPAL_CLIENT_SECRET" \
  --service-principal-tenant-id "$AZURE_TENANT_ID"
  --ingress external 

Ha a Docker-fájlon keresztül konfigurálja a bejövő forgalmat, vagy az alkalmazás nem igényel bejövő forgalmat, kihagyhatja a --ingress beállítást.

A up parancs létrehoz egy GitHub Actions-munkafolyamatot. Ennek eredményeképpen a parancs újrafuttatása nem kívánt hatással van több munkafolyamat létrehozására. Ha módosításokat szeretne üzembe helyezni az alkalmazás lemezképén, a parancs újrafuttatása helyett küldje le a módosításokat a GitHub-adattárba. A GitHub-munkafolyamat automatikusan észleli az adattár módosításait, majd létrehozza és üzembe helyezi az alkalmazást. A munkafolyamat módosításához szerkessze a munkafolyamat-fájlt a GitHubon.

Tárolóalkalmazás beállításainak konfigurálása

A az containerapp up parancs leegyszerűsíti az elsődlegesen alapértelmezett beállításokat használó tárolóalkalmazások létrehozását és üzembe helyezését. A parancs használata up után azonban más Azure CLI-parancsokat kell futtatnia, például a következő parancsokat, ha speciálisabb beállításokat szeretne konfigurálni:

Ha testre szeretné szabni a tárolóalkalmazás egyéb beállításait, például az erőforrás- vagy skálázási beállításokat, először használja a parancsot a up tárolóalkalmazás üzembe helyezéséhez. Ezután a az containerapp update paranccsal módosíthatja ezeket a beállításokat. A az containerapp up parancs nem a parancs rövidítése az containerapp update .

Következő lépés