AzureContainerApps@0 – Azure Container Apps – 0-s verziós feladat üzembe helyezése
Azure DevOps-feladat az Azure Container Apps létrehozásához és üzembe helyezéséhez.
Syntax
# Azure Container Apps Deploy v0
# An Azure DevOps Task to build and deploy Azure Container Apps.
- task: AzureContainerApps@0
inputs:
# advanced
#workingDirectory: # string. Alias: cwd. Working Directory.
#appSourcePath: # string. Application source path.
azureSubscription: # string. Alias: connectedServiceNameARM. Required. Azure Resource Manager connection.
#acrName: # string. Azure Container Registry name.
#acrUsername: # string. Azure Container Registry username.
#acrPassword: # string. Azure Container Registry password.
#dockerfilePath: # string. Dockerfile path.
#imageToBuild: # string. Docker image to build.
#imageToDeploy: # string. Docker image to deploy.
#containerAppName: # string. Azure Container App name.
#resourceGroup: # string. Azure resource group name.
#containerAppEnvironment: # string. Azure Container App environment.
#runtimeStack: # string. Application runtime stack.
#targetPort: # string. Application target port.
#location: # string. Location of the Container App.
#environmentVariables: # string. Environment variables.
#ingress: # string. Ingress setting.
#yamlConfigPath: # string. YAML configuration file path.
#disableTelemetry: # boolean. Disable telemetry.
Bevitelek
workingDirectory
- Munkakönyvtár
Bemeneti alias: cwd
. string
.
Aktuális munkakönyvtár, ahol a szkript fut. Az üres az adattár (build) vagy összetevők (kiadás) gyökere, amely $(System.DefaultWorkingDirectory).
appSourcePath
- Alkalmazás forrásútvonala
string
.
Abszolút elérési út a létrehozandó forrásalkalmazás-kód futóján. Ha nincs megadva, a "imageToDeploy" argumentumot meg kell adni, hogy a tárolóalkalmazás rendelkezik-e hivatkozási képpel.
Amikor új lemezképet küld az ACR-be, a és appSourcePath
a acrName
feladat bemenetére van szükség.
azureSubscription
- Azure Resource Manager-kapcsolat
Bemeneti alias: connectedServiceNameARM
. string
. Kötelező.
Adjon meg egy Azure Resource Manager szolgáltatáskapcsolatot az üzembe helyezéshez. Ezt a szolgáltatáskapcsolatot hozzá kell kapcsolni a felhasználó Azure-előfizetéséhez, ahol a tárolóalkalmazás létre lesz hozva/frissítve lesz. Ennek a szolgáltatáskapcsolatnak megfelelő engedélyekkel kell rendelkeznie ahhoz, hogy ezeket a módosításokat elvégezhesse az előfizetésen belül, például közreműködői szerepkörrel.
acrName
- Azure Container Registry neve
string
.
Annak a Azure Container Registry a neve, amelybe a futtatható alkalmazás lemezképét leküldi a rendszer.
Amikor új lemezképet küld az ACR-be, a és appSourcePath
a acrName
feladat bemenetére van szükség.
acrUsername
- Azure Container Registry felhasználónév
string
.
A leküldéses kérelmek hitelesítéséhez használt felhasználónév a megadott Azure Contrainer Registryben. Ha nincs megadva, a rendszer létrehoz egy hozzáférési jogkivonatot az "az acr login" használatával, és megadja a "docker-bejelentkezést" a kérések hitelesítéséhez.
acrPassword
- Azure Container Registry jelszó
string
.
A leküldéses kérelmek hitelesítéséhez használt jelszó a megadott Azure Contrainer Registry-be. Ha nincs megadva, a rendszer létrehoz egy hozzáférési jogkivonatot az "az acr login" használatával, és megadja a "docker-bejelentkezést" a kérések hitelesítéséhez.
dockerfilePath
- Dockerfile elérési útja
string
.
Relatív elérési út (_without fájlelőtagok (lásd a következő példákat) a dockerfile-hoz a megadott alkalmazásforrásban, amelyet a rendszerkép létrehozásához kell használni, amelyet aztán le kell küldeni az ACR-be, és üzembe kell helyezni a tárolóalkalmazásban. Ha nincs megadva, ez a feladat ellenőrzi, hogy van-e "Dockerfile" nevű fájl a megadott alkalmazásforrás gyökerében, és ezzel hozza létre a lemezképet. Ellenkező esetben az Oryx++ Builder használatával hozza létre a képet.
imageToBuild
- Docker-rendszerkép készítése
string
.
A létrehozandó, az ACR-be leküldendő és a tárolóalkalmazásban üzembe helyezendő rendszerkép egyéni neve ezzel a feladattal. Megjegyzés: a rendszerkép nevének tartalmaznia kell az ACR-kiszolgálót; például: <acr-name>.azurecr.io/<repo>:<tag>
. Ha ez az argumentum nincs megadva, a rendszer létrehoz egy alapértelmezett rendszerképnevet a következő <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>
formában: .
imageToDeploy
- Üzembe helyezendő Docker-rendszerkép
string
.
A rendszerkép neve, amelyet már leküldtek az ACR-be, és ezzel a feladattal lesz üzembe helyezve a tárolóalkalmazásban. Megjegyzés: a rendszerkép nevének tartalmaznia kell az ACR-kiszolgálót; például: <acr-name>.azurecr.io/<repo>:<tag>
. Ha ez az argumentum nincs megadva, a rendszer a "imageToBuild" argumentumhoz megadott (vagy meghatározott) értéket használja. Ha ez a rendszerkép olyan ACR-példányban található, amely hitelesítést igényel a lekéréshez, az acrName
argumentum vagy az acrUsername
és acrPassword
az argumentum megadható az ACR-példány felé irányuló kérések hitelesítéséhez.
containerAppName
- Az Azure Container App neve
string
.
A létrehozandó vagy frissített Azure Container App neve. Ha nincs megadva, ez az érték a következő formában ado-task-app-<build-id>-<build-number>
jelenik meg: .
resourceGroup
- Azure-erőforráscsoport neve
string
.
Az az erőforráscsoport, amelyben az Azure Container App létrejön (vagy jelenleg létezik). Ha nincs megadva, ez az érték a következő formában <container-app-name>-rg
jelenik meg: .
containerAppEnvironment
- Azure Container App-környezet
string
.
Az alkalmazással használni kívánt Azure Container App-környezet neve. Ha nincs megadva, a tárolóalkalmazás erőforráscsoportjában lévő meglévő környezet lesz használatban, ellenkező esetben egy környezet jön létre a következő formátumban <container-app-name>-env
: .
runtimeStack
- Alkalmazás-futtatókörnyezeti verem
string
.
A tárolóalkalmazásban üzembe helyezett utolsó futtatható alkalmazásrendszerképben használt platformverzió-verem. Az értéket a formációban <platform>:<version>
kell megadni. Ha nincs megadva, ezt az értéket az Oryx határozza meg a megadott alkalmazás tartalma alapján. Az Oryx által támogatott futtatókörnyezeti vermekről ebben a dokumentumban talál további információt.
targetPort
- Alkalmazás célportja
string
.
A tárolóalkalmazás által figyelt célport. Ha nincs megadva, ez az érték "80" lesz Python-alkalmazások esetében, és "8080" az összes többi támogatott platform esetében.
location
- A tárolóalkalmazás helye
string
.
Az a hely, ahol a tárolóalkalmazás (és más létrehozott erőforrások) üzembe lesznek helyezve.
environmentVariables
- Környezeti változók
string
.
A tároló környezeti változóinak listája. Szóközzel elválasztott értékek "key=value" formátumban. Üres sztring a meglévő értékek törléséhez. A "secretref:" előtag értéke egy titkos kódra való hivatkozáshoz.
ingress
- Bejövő forgalom beállítása
string
.
Lehetséges lehetőségek: külső, belső, letiltva. Ha a external
tárolóalkalmazás létrehozásakor nem adja meg az alapértelmezett értéket, akkor a tárolóalkalmazás látható lesz az internetről vagy egy virtuális hálózatról a konfigurált alkalmazáskörnyezeti végponttól függően. Ha a értékre internal
van állítva, a tárolóalkalmazás csak az alkalmazáskörnyezetből lesz látható. Ha a értékre disabled
van állítva, a bejövő forgalom le lesz tiltva ehhez a tárolóalkalmazáshoz, és nem lesz HTTP- vagy TCP-végpontja.
yamlConfigPath
- YAML-konfigurációs fájl elérési útja
string
.
A tárolóalkalmazás konfigurációját részletező YAML-fájl teljes elérési útja (a végrehajtó Azure Pipelines-ügynökön).
A resourceGroup
YAML-konfigurációs fájlban lévő tulajdonság nem lesz használva; ennek értéke vagy a resourceGroup
tevékenységhez megadott argumentumból, vagy a tevékenység által létrehozott alapértelmezett erőforráscsoport-névből származik. A YAML-konfigurációs fájlban megadott összes többi tulajdonság felülbírálja a feladat argumentumaként megadott értékeket; Ha például az containerAppName
argumentum meg van adva a feladatnak, és a name
tulajdonság be van állítva a YAML konfigurációs fájlban, a name
YAML-fájlban lévő tulajdonságot fogja használni a tárolóalkalmazás létrehozásakor vagy frissítésekor.
A rendszerkép- és alkalmazásforrás-argumentumok (pl.appSourcePath
, imageToDeploy
) továbbra is a tárolóalkalmazás által használt rendszerképek első létrehozására és/vagy leküldésére használhatók. Ebben az esetben a megadott YAML-konfigurációs fájlnak a (vagy imageToBuild
) által imageToDeploy
megadott képre kell hivatkoznia a forgatókönyvtől függően.
Új tárolóalkalmazás létrehozásakor a YAML-konfigurációs fájlban felsorolt összes tulajdonság (a fent említettek kivételével resourceGroup
) be lesz állítva a tárolóalkalmazás létrehozásakor. Meglévő tárolóalkalmazás frissítésekor csak a fájlban felsorolt tulajdonságok lesznek frissítve a tárolóalkalmazásban.
A YAML-fájl jelenleg nem támogatja a felügyelt identitás hitelesítésének beállítását a használt tárolóregisztrációs adatbázishoz; A problémával kapcsolatos további információkért tekintse meg ezt a GitHub-problémát.
Olyan esetekben, amikor az yamlConfigPath
argumentum meg van adva, a YAML-fájl át lesz adva a megfelelő az containerapp
parancsnak, vagy create
update
a forgatókönyvtől függően. A YAML konfigurációs fájljának megadásakor használni kívánt viselkedésről a megfelelő parancsokhoz csatolt dokumentumokban talál további információt.
A YAML konfigurációs fájl szerkezetével kapcsolatos további információkért látogasson el erre a webhelyre.
disableTelemetry
- Telemetria letiltása
boolean
.
Ha "true" (igaz) értékre van állítva, az Azure DevOps-feladat nem gyűjt telemetriát. Ha "false" értékre van állítva, vagy ha ez az argumentum nincs megadva, a rendszer telemetriát küld a Microsoftnak a tárolóalkalmazás ezen Azure DevOps-feladat által megcélzott buildelési és üzembe helyezési forgatókönyvéről.
Feladatvezérlési lehetőségek
Minden feladathoz tartoznak vezérlési lehetőségek is a feladat bemenetei mellett. További információ: Vezérlési beállítások és gyakori feladattulajdonságok.
Kimeneti változók
Nincsenek.
Megjegyzések
Ez az Azure Pipelines-feladat lehetővé teszi, hogy a felhasználók egyszerűen üzembe helyezhessék alkalmazásforrásukat egy Azure-tárolóalkalmazásban az Azure Pipelines-munkafolyamatban egy korábban létrehozott rendszerkép, egy Olyan Docker-fájl biztosításával, amelyből lemezkép készíthető, vagy egy szerkesztő használatával futtatható alkalmazásrendszerképet hozhatnak létre a felhasználó számára.
A tevékenység a következő két használati mintával rendelkezik.
- Kép az ACR-be való leküldése – amikor új lemezképet küld az ACR-be, a és
appSourcePath
aacrName
feladat bemenetére van szükség. - Korábban leküldéses rendszerkép üzembe helyezése – egy korábban leküldéses rendszerkép üzembe helyezésekor a
imageToDeploy
feladat bemenetére van szükség. Ha ez a rendszerkép olyan ACR-példányban található, amely hitelesítést igényel a lekéréshez, azacrName
argumentum vagy azacrUsername
ésacrPassword
az argumentum megadható az ACR-példány felé irányuló kérések hitelesítéséhez.
Megjegyzés
Bár a feladat metaadataiban hivatalosan nem szerepel a tevékenység bemenete, bizonyos bemeneteket meg kell adni ahhoz, hogy a feladat sikeresen fusson a két fő használati jel egyikével.
Ha a megadott alkalmazásforrásban nem található vagy nem található Docker-fájl, a következő lépéseket hajtja végre ez a feladat:
- Az Oryx++ Builder használatával hozza létre az alkalmazás forrását az Oryx használatával egy futtatható alkalmazáskép létrehozásához
- Leküldi ezt a futtatható alkalmazásképet a megadott Azure Container Registry
- Tárolóalkalmazás létrehozása vagy frissítése a rendszerkép alapján
Ha dockerfile található vagy észlelhető az alkalmazás forrásában, a rendszer nem használja a szerkesztőt, és a rendszerképet hívással docker build
hozza létre, a tárolóalkalmazás pedig ezen a lemezképen alapulva jön létre vagy frissül.
Ha egy korábban létrehozott rendszerképet már leküldtek az ACR-példányra, és ezt a feladatot adták meg, nincs szükség alkalmazásforrásra, és a rendszerképet fogja használni a tárolóalkalmazás létrehozásakor vagy frissítésekor.
A feladat futtatása a Microsoft által üzemeltetett ügynökökön
Ha ezt a feladatot egy Microsoft által üzemeltetett ügynökön futtatja, előfordulhat, hogy ez a feladat nem tud sikeresen futni a következő operációs rendszerekkel:
- macOS
- A Microsoft által biztosított macOS-futók nem települnek a Dockerrel (további információ itt); Ennek eredményeképpen ez a feladat nem tud parancsokat futtatni
docker
, például leküldi a beépített futtatható alkalmazásképeket az ACR-be.
- A Microsoft által biztosított macOS-futók nem települnek a Dockerrel (további információ itt); Ennek eredményeképpen ez a feladat nem tud parancsokat futtatni
- Windows
- A Microsoft által biztosított Windows-futtatókhoz telepítve van a Docker, de alapértelmezés szerint a Linux-alapú rendszerképeket nem lehet lekérni; Ennek eredményeképpen ez a feladat nem tudja lekérni az Oryx szerkesztőt, hogy futtatható alkalmazásképeket hozzon létre a megadott alkalmazásforrásból.
További információért tekintse meg az alábbi Docker-előfeltételeket ismertető szakaszt.
Adat-/telemetriagyűjtési értesítés
Alapértelmezés szerint ez az Azure DevOps-feladat a következő adatokat gyűjti a Microsoft számára:
- A tárolóalkalmazás felhasználó által megcélzott buildelési és üzembe helyezési forgatókönyve
- például az Oryx++ Buildert használta, egy megadott/talált Docker-fájlt használt, vagy egy korábban létrehozott rendszerképet adott meg
- Megjegyzés: a rendszer nem gyűjti össze a rendszerkép nevét
- A feladat feldolgozási ideje ezredmásodpercben
- A feladat eredménye
- sikeres vagy sikertelen
- Ha az Oryx++ Buildert használja, a megadott alkalmazás Oryx használatával történő létrehozásához kapcsolódó események és metrikák
Ha le szeretné tiltani az adatgyűjtést, állítsa az argumentumot értékre disableTelemetry
true
.
Előfeltételek
A feladat futtatása előtt az Azure-erőforrások és az Azure DevOps szolgáltatáskapcsolat szükséges vagy választható a feladathoz megadott argumentumoktól függően.
Azure DevOps Service-kapcsolat
Az Azure-ban való üzembe helyezéshez egy Azure-előfizetést a Team Foundation Serverhez vagy az Azure Pipelineshoz kell kapcsolni a beállítások szakasz Szolgáltatások lapján. Adja hozzá a buildelési vagy kiadáskezelési definícióban használni kívánt Azure-előfizetést a Fiókfelügyelet képernyő megnyitásával (fogaskerék ikon a képernyő jobb felső sarkában), majd kattintson a Szolgáltatások lapra.
Hozza létre az ARM-szolgáltatásvégpontot, és használja az "Azure Resource Manager" végponttípust. A szolgáltatáskapcsolatok létrehozásával kapcsolatos további információkért kövesse ezt a dokumentumot.
Azure CLI
Ehhez a feladathoz telepíteni kell az Azure CLI-t az Azure Pipelines-ügynökre, hogy a feladat végrehajtása során számos parancsot végrehajtsunk. Az Azure CLI ügynökre való telepítésével kapcsolatos további információkért tekintse meg ezt a dokumentumot. Ha egy ügynök már fut azon a gépen, amelyen az Azure CLI telepítve van, győződjön meg arról, hogy újraindítja az ügynököt, hogy az összes releváns környezeti változó frissüljön.
Docker
Ehhez a feladathoz telepíteni kell a Dockert az Azure Pipelines-ügynökre, hogy leküldje a rendszerképeket a megadott Azure Container Registry. A Docker ügynökre való telepítésével kapcsolatos további információkért tekintse meg ezt a dokumentumot.
Emellett a Windows-ügynökkel ezt a feladatot futtató felhasználók problémákba ütközhetnek, ha nem tudják lekérni a Linux-alapú lemezképeket; A probléma megoldásához látogasson el erre a webhelyre, vagy keresse fel a fájlt az DockerCli.exe
ügynökén (általában a mappában), és futtassa a Program Files\Docker\Docker
& `.\DockerCli.exe` -SwitchDaemon
Ha a Docker nincs telepítve a feladatot futtató ügynökre, a következő forgatókönyvek továbbra is engedélyezve vannak:
- Korábban létrehozott rendszerkép biztosítása a
imageToDeploy
tárolóalkalmazás által üzembe helyezett argumentumnak
Ha a Docker az ügynökön van, de nem tud Linux-alapú rendszerképekkel dolgozni, a következő forgatókönyvek továbbra is engedélyezve vannak:
- Korábban létrehozott rendszerkép biztosítása a
imageToDeploy
tárolóalkalmazás által üzembe helyezett argumentumnak Dockerfile
A tárolóalkalmazással létrehozandó és üzembe helyezendő alkalmazásforrás részeként történő megadása- Megjegyzés: a
Dockerfile
nem rendelkezhet Linux-alapú rendszerképrétegek
- Megjegyzés: a
csomag parancssori felülete
A csomag parancssori felületét a Cloud Native Buildpacks projekt tartja fenn, és ezzel a feladattal futtatható alkalmazásképeket hozhat létre a felhasználó számára az alkalmazás forráskódjának megadásakor, és nem talál további Docker-fájlt. Az Oryx létrehozott egy szerkesztőt , hogy bevegye a feladathoz megadott alkalmazás forráskódját, és létrehoz egy rendszerképet, amelyet aztán leküldhet egy lemezkép-beállításjegyzékbe, és amelyet egy tárolóalkalmazásban használhat az alkalmazás létrehozásához és futtatásához.
A csomag parancssori felületének egy stabil verziója van telepítve a feladatot végrehajtó Azure Pipelines-ügynökre, és az ügynök alap operációs rendszerétől függően a telepítéshez különböző eszközök fognak segítséget nyújtani:
- Windows rendszerű futókon:
- A rendszer powershell-parancsokat hajt végre a következő műveletek végrehajtásához:
- Létrehoz egy
pack
mappát az ügynök ideiglenes mappájában, ha apack
mappa még nem létezik - A csomag parancssori felületének
.zip
letöltése ebbe apack
mappába - Bontsa ki a tartalmat ebből
.zip
, és elhelyezi őket apack
mappában - Törli a
.zip
- Létrehoz egy
- A rendszer powershell-parancsokat hajt végre a következő műveletek végrehajtásához:
- Nem Windows rendszerű futók esetén:
curl
a rendszer a végrehajtható fájlt tartalmazó fájl lekérésére.tgz
pack
fogja használnitar
a használatával kibontja a.tgz
fájlt, és elhelyezi a végrehajtható fájlt apack
/usr/local/bin
Azure Container Registry
Léteznie kell egy Azure Container Registry, amelybe a felhasználó le tudja küldeni a tárolórendszerképeket. Ez a feladat a Azure Container Registry fogja használni egy beépített futtatható alkalmazásrendszerkép leküldéséhez és/vagy tárolóalkalmazás üzembe helyezéséhez.
A Azure Container Registry nevének megadása kötelező az acrName
argumentumon keresztül.
A felhasználó a és acrPassword
argumentumok acrUsername
értékeit is megadhatja, amelyek hitelesítik a Azure Container Registry-példány felé irányuló hívásokat. Ha nincs megadva, a rendszer létrehoz egy hozzáférési jogkivonatot az Azure CLI-vel, amely hitelesíti a hívásokat.
Azure Container App-környezet
Javasoljuk, hogy a felhasználó korábban már létrehozott egy Azure Container App-környezetet a feladat teljesítményének javítása érdekében. Ha korábban még nem hoztak létre környezetet, vagy ha nem található környezet a létrehozott tárolóalkalmazás üzemeltetéséhez használt erőforráscsoportban, akkor a környezet a az containerapp up
parancs részeként jön létre, ami további időt vehet igénybe.
Példák
Az alábbi példák bemutatja, hogyan használható a AzureContainerApps
különböző forgatókönyvekben.
Minimális – Alkalmazáskép létrehozása tárolóalkalmazáshoz
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
. A tárolóalkalmazás egy olyan rendszerképen alapul, amely a megadott appSourcePath
ACR-példányból lett létrehozva és leküldve. A rendszer létrehoz egy hozzáférési jogkivonatot a megadott ACR-példány felé történő leküldés hitelesítéséhez.
Minimális – Korábban közzétett rendszerkép használata tárolóalkalmazáshoz
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
imageToDeploy: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
, ahol nem jön létre új rendszerkép, de a tárolóalkalmazáshoz egy nevű mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
meglévő rendszerkép lesz használva.
Minimális – YAML-konfigurációs fájl használata a tárolóalkalmazás korábban közzétett rendszerképével
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
yamlConfigPath: simple-image-container-app.yaml
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
, ahol nem jön létre új rendszerkép, de a tárolóalkalmazáshoz egy nevű mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
meglévő rendszerkép lesz használva. A tárolóalkalmazás további tulajdonságai le lesznek kérve a simple-image-container-app.yaml
fájlból, és felülbírálják azokat a további értékeket, amelyeket a tevékenység argumentumként adott volna meg, kivéve a következőt resourceGroup
: .
A simple-image-container-app.yaml
fájl struktúrája a következő:
properties:
managedEnvironmentId: /subscriptions/SUBSCRIPTION_ID/resourceGroup/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
configuration:
ingress:
external: true
allowInsecure: false
targetPort: 80
template:
containers:
- image: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
name: mysampleimagecontainer
A és CONTAINER_APP_ENVIRONMENT
értékeket RESOURCE_GROUP
SUBSCRIPTION_ID
frissíteni kell, hogy a tárolóalkalmazás által használt meglévő tárolóalkalmazás-környezet teljes erőforrás-azonosítójára mutasson.
ACR hitelesítő adatok használata a hitelesítéshez
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
acrUsername: $(ACR_USERNAME_SECRET)
acrPassword: $(ACR_PASSWORD_SECRET)
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
. A tárolóalkalmazás egy olyan rendszerképen alapul, amely a megadott appSourcePath
ACR-példányból lett létrehozva és leküldve. A megadott ACR-hitelesítő adatokkal hitelesíti az ACR-példány felé irányuló hívásokat.
Tárolóalkalmazás neve megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
containerAppName: 'my-test-container-app'
Ezzel létrehoz egy nevű új tárolóalkalmazást my-test-container-app
egy új erőforráscsoportnévben my-test-container-app-rg
.
Erőforráscsoport megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
resourceGroup: 'my-test-rg'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű my-test-rg
erőforráscsoportban. Ha az my-test-rg
erőforráscsoport nem létezik, a tevékenység részeként jön létre.
Tárolóalkalmazás neve és erőforráscsoportja megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
containerAppName: 'my-test-container-app'
resourceGroup: 'my-test-rg'
Ezzel létrehoz egy nevű új tárolóalkalmazást my-test-container-app
egy nevű my-test-rg
erőforráscsoportban. Ha az my-test-rg
erőforráscsoport nem létezik, a tevékenység részeként jön létre.
Tárolóalkalmazás-környezet megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
containerAppEnvironment: 'my-test-container-app-env'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
egy nevű új tárolóalkalmazás-környezettel my-test-container-app-env
.
Futtatókörnyezeti verem megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
runtimeStack: 'dotnetcore:7.0'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
, ahol a futtatható alkalmazás lemezképe a .NET 7 futtatókörnyezeti vermet használja.
Dockerfile megadva
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
dockerfilePath: 'test.Dockerfile'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
, ahol a futtatható alkalmazás lemezképe a test.Dockerfile
megadott alkalmazás forrásútvonal-könyvtárában található fájlból lett létrehozva.
Megjegyzés: a számára megadott dockerfilePath
értékek esetében nem szabad fájlelőtagokat tartalmaznia (például./test.Dockerfile
csak a fájlnak kell átadniatest.Dockerfile
). A megadott appSourcePath
és dockerfilePath
argumentumok összefűződnek a tevékenységen belül.
Létrehozandó rendszerkép
steps:
- task: AzureContainerApps@0
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
imageToBuild: 'mytestacr.azurecr.io/app:latest'
Ezzel létrehoz egy nevű új tárolóalkalmazást ado-task-app-<build-id>-<build-number>
egy nevű új erőforráscsoportban <container-app-name>-rg
, ahol az ACR-be létrehozott és leküldett rendszerkép neve mytestacr.azurecr.io/app:latest
.
Követelmények
Követelmény | Leírás |
---|---|
Folyamattípusok | YAML, klasszikus build, klasszikus kiadás |
Futtatás: | Ügynök, DeploymentGroup |
Igények | None |
Képességek | Ez a tevékenység nem felel meg a feladat későbbi tevékenységeire vonatkozó követelményeknek. |
Parancskorlátozások | Bármelyik |
Változók beállítása | Bármelyik |
Ügynök verziója | 2.144.0 vagy újabb |
Feladatkategória | Üzembe helyezés |