AzureContainerApps@1 – Úloha Nasazení azure Container Apps v1
Úloha Azure DevOps pro sestavení a nasazení Azure Container Apps.
Syntax
# Azure Container Apps Deploy v1
# An Azure DevOps Task to build and deploy Azure Container Apps.
- task: AzureContainerApps@1
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.
Vstupy
workingDirectory
- Pracovní adresář
Vstupní alias: cwd
. string
.
Aktuální pracovní adresář, ve kterém je skript spuštěn. Prázdný je kořen úložiště (sestavení) nebo artefaktů (verze), což je $(System.DefaultWorkingDirectory).
appSourcePath
- Cesta ke zdroji aplikace
string
.
Absolutní cesta na běžci zdrojového kódu aplikace, který se má sestavit. Pokud není k dispozici, je nutné zadat argument imageToDeploy, aby se zajistilo, že aplikace kontejneru obsahuje image, na které se má odkazovat.
Při nahrání nové image do ACR acrName
se vyžadují vstupy úkolů a appSourcePath
.
azureSubscription
- Připojení azure Resource Manager
Vstupní alias: connectedServiceNameARM
. string
. Povinná hodnota.
Zadejte připojení služby Azure Resource Manager pro nasazení. Toto připojení služby musí být propojené s předplatným Azure uživatele, ve kterém se vytvoří nebo aktualizuje aplikace kontejneru. Toto připojení služby musí mít správná oprávnění k provedení těchto změn v rámci předplatného, například role Přispěvatel.
acrName
- název Azure Container Registry
string
.
Název Azure Container Registry, do které bude vložena image spustitelné aplikace.
Při nahrání nové image do ACR acrName
se vyžadují vstupy úkolů a appSourcePath
.
acrUsername
- uživatelské jméno Azure Container Registry
string
.
Uživatelské jméno použité k ověřování nabízených žádostí do poskytnutého registru Azure Contrainer Registry. Pokud není k dispozici, přístupový token se vygeneruje prostřednictvím příkazu az acr login a poskytne se do docker login k ověření požadavků.
acrPassword
- Azure Container Registry heslo
string
.
Heslo použité k ověřování nabízených žádostí do poskytnutého registru Azure Contrainer Registry. Pokud není k dispozici, přístupový token se vygeneruje prostřednictvím příkazu az acr login a poskytne se do docker login k ověření požadavků.
dockerfilePath
- Cesta k souboru Dockerfile
string
.
Relativní cesta (_without předpony souborů (viz následující příklady) k souboru Dockerfile v zadaném zdroji aplikace, který by se měl použít k sestavení image, která se pak odešle do ACR a nasadí do aplikace kontejneru. Pokud není zadaný, tato úloha zkontroluje, jestli v kořenovém adresáři zadaného zdroje aplikace není soubor s názvem Dockerfile, a použije ho k sestavení image. V opačném případě se k vytvoření image použije Nástroj Oryx++ Builder.
imageToBuild
- Image Dockeru k sestavení
string
.
Vlastní název image, kterou má tato úloha sestavit, odeslat do ACR a nasadit do aplikace kontejneru. Poznámka: Tento název image by měl obsahovat server ACR; např <acr-name>.azurecr.io/<repo>:<tag>
. Pokud tento argument nezadáte, vytvoří se výchozí název image ve tvaru <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>
.
imageToDeploy
- Image Dockeru pro nasazení
string
.
Název image, která už byla nasdílena do ACR a která se touto úlohou nasadí do aplikace kontejneru. Poznámka: Název image by měl obsahovat server ACR; např <acr-name>.azurecr.io/<repo>:<tag>
. Pokud tento argument není zadaný, použije se hodnota zadaná (nebo určená) pro argument imageToBuild. Pokud se tato image nachází v instanci služby ACR, která vyžaduje ověření pro vyžádání, acrName
je možné zadat argument nebo acrUsername
argumenty a acrPassword
pro ověření požadavků na instanci ACR.
containerAppName
- Název aplikace kontejneru Azure
string
.
Název aplikace kontejneru Azure, která se vytvoří nebo aktualizuje. Pokud ji nezadáte, bude tato hodnota ve tvaru ado-task-app-<build-id>-<build-number>
.
resourceGroup
- Název skupiny prostředků Azure
string
.
Existující skupina prostředků, ve které se vytvoří aplikace Azure Container App (nebo v současnosti existuje). Pokud ji nezadáte, bude tato hodnota ve tvaru <container-app-name>-rg
.
containerAppEnvironment
- Prostředí aplikací kontejneru Azure
string
.
Název prostředí Aplikace kontejneru Azure, které se má použít s aplikací. Pokud není k dispozici, použije se existující prostředí ve skupině prostředků aplikace kontejneru, jinak se vytvoří prostředí ve formátu <container-app-name>-env
.
runtimeStack
- Zásobník modulu runtime aplikace
string
.
Zásobník verzí platformy použitý v konečné imagi spustitelné aplikace, která se nasadí do aplikace kontejneru. Hodnota by měla být uvedena ve formaci <platform>:<version>
. Není-li tato hodnota poskytnuta, určuje oryx na základě obsahu poskytnuté aplikace. Další informace o podporovaných zásobníkech modulu runtime pro Oryx najdete v tomto dokumentu .
targetPort
- Cílový port aplikace
string
.
Cílový port, na který bude aplikace kontejneru naslouchat. Pokud není tato hodnota zadaná, bude tato hodnota 80 pro aplikace Python a 8080 pro všechny ostatní podporované platformy.
location
- Umístění aplikace kontejneru
string
.
Umístění, do kterého se aplikace kontejneru (a další vytvořené prostředky) nasadí.
environmentVariables
- Proměnné prostředí
string
.
Seznam proměnných prostředí pro kontejner. Hodnoty oddělené mezerami ve formátu key=value. Prázdný řetězec vymaže existující hodnoty. Hodnota předpony s secretref:, která odkazuje na tajný klíč.
ingress
- Nastavení příchozího přenosu dat
string
.
Možné možnosti: externí, interní, zakázané. Pokud je tato hodnota nastavená na external
(výchozí hodnota, pokud není zadaná při vytváření aplikace kontejneru), bude aplikace kontejneru viditelná z internetu nebo virtuální sítě v závislosti na nakonfigurovaných koncových bodech prostředí aplikace. Pokud je nastavená hodnota internal
, bude aplikace kontejneru viditelná jenom v prostředí aplikace. Pokud je nastavená hodnota disabled
, bude příchozí přenos dat pro tuto aplikaci kontejneru zakázaný a nebude mít koncový bod HTTP nebo TCP.
yamlConfigPath
- Cesta ke konfiguračnímu souboru YAML
string
.
Úplná cesta (při spouštění agenta Azure Pipelines) k souboru YAML s podrobnostmi o konfiguraci aplikace kontejneru.
Vlastnost resourceGroup
v konfiguračním souboru YAML nebude použita. Hodnota pro tuto hodnotu pochází buď z argumentu resourceGroup
zadaného úkolu, nebo z výchozího názvu skupiny prostředků vygenerovaného úlohou. Všechny ostatní vlastnosti poskytnuté v konfiguračním souboru YAML přepíší hodnoty zadané jako argumenty pro tuto úlohu; Pokud containerAppName
je například argument zadaný úkolu a name
vlastnost je nastavena v konfiguračním souboru YAML, name
použije se vlastnost v souboru YAML při vytváření nebo aktualizaci aplikace kontejneru.
Argumenty zdroje imagí a aplikace (např.appSourcePath
, imageToDeploy
) se budou nadále používat k prvnímu sestavení nebo odeslání image, kterou používá aplikace kontejneru. V tomto případě bude poskytnutý konfigurační soubor YAML muset odkazovat na image určenou nástrojem imageToDeploy
(nebo imageToBuild
) v závislosti na vašem scénáři.
Při vytváření nové aplikace kontejneru se při vytvoření aplikace kontejneru nastaví všechny vlastnosti uvedené v konfiguračním souboru YAML (s výjimkou resourceGroup
výše uvedeného). Při aktualizaci existující aplikace kontejneru se v aplikaci kontejneru aktualizují jenom vlastnosti uvedené v souboru.
V současné době soubor YAML nepodporuje nastavení ověřování spravované identity pro použitý registr kontejneru. Další informace o tomto problému najdete v tomto problému na GitHubu.
V případech, kdy yamlConfigPath
je argument zadaný, bude soubor YAML předán odpovídajícímu az containerapp
příkazu, buď create
neboupdate
v závislosti na vašem scénáři. Další informace o zamýšleném chování při poskytnutí konfiguračního souboru YAML najdete v dokumentech s odpovídajícími příkazy propojenými.
Další informace o struktuře konfiguračního souboru YAML najdete na tomto webu.
disableTelemetry
- Zakázat telemetrii
boolean
.
Pokud je nastavená hodnota true, nebude tato úloha Azure DevOps shromažďovat žádnou telemetrii. Pokud je nastavená hodnota false nebo pokud tento argument není zadaný, odešle se do Microsoftu telemetrie týkající se scénáře sestavení a nasazení aplikace kontejneru, na který cílí tato úloha Azure DevOps.
Možnosti ovládání úloh
Všechny úlohy mají kromě vstupů také možnosti ovládání. Další informace najdete v tématu Možnosti ovládacího prvku a běžné vlastnosti úlohy.
Výstupní proměnné
Žádné
Poznámky
Tato úloha Azure Pipelines umožňuje uživatelům snadno nasadit zdroj aplikace do aplikace kontejneru Azure v pracovním postupu Azure Pipelines tím, že buď poskytne dříve vytvořenou image, soubor Dockerfile, ze kterého lze image vytvořit, nebo pomocí tvůrce vytvoří pro uživatele spustitelnou image aplikace.
Úloha má následující dva vzory použití.
- Nahrání image do ACR – při nahrání nové image do ACR
acrName
se vyžadují vstupy úkolů aappSourcePath
. - Nasazení dříve nasdílené image – při nasazení dříve nabízené image
imageToDeploy
se vyžaduje zadání úkolu. Pokud se tato image nachází v instanci služby ACR, která vyžaduje ověření pro vyžádání,acrName
je možné zadat argument neboacrUsername
argumenty aacrPassword
pro ověření požadavků na instanci ACR.
Poznámka
I když v metadatech tohoto úkolu není oficiálně označen žádný vstup úkolu jako "povinný", bude nutné zadat některé vstupy, aby se tento úkol úspěšně spustil pomocí jednoho ze dvou hlavních pattenerů pro použití.
Pokud se v zadaném zdroji aplikace nenajde nebo neposkytne žádný soubor Dockerfile, provede tato úloha následující kroky:
- Použije Nástroj Oryx++ Builder k sestavení zdroje aplikace pomocí nástroje Oryx k vytvoření spustitelné bitové kopie aplikace.
- Nasdílí tuto spustitelnou image aplikace do zadané Azure Container Registry
- Vytvoří nebo aktualizuje aplikaci kontejneru na základě této image.
Pokud se ve zdroji aplikace najde nebo zjistí soubor Dockerfile, tvůrce se nepoužije a image se sestaví pomocí volání docker build
a aplikace kontejneru se vytvoří nebo aktualizuje na základě této image.
Pokud se dříve sestavená image již odeslala do instance služby ACR a je k dispozici pro tuto úlohu, nevyžaduje se žádný zdroj aplikace a image se použije při vytváření nebo aktualizaci aplikace kontejneru.
Spuštění této úlohy na agentech hostovaných Microsoftem
Pokud tuto úlohu spouštíte na agentu hostovaném Microsoftem, můžete zjistit, že se tato úloha nedá úspěšně spustit s následujícími operačními systémy:
- macOS
- Nástroje macOS runner od Microsoftu nejsou součástí instalace Dockeru (další informace najdete tady). v důsledku toho tato úloha nemůže spouštět žádné
docker
příkazy, například nasdílením sestavených imagí spustitelných aplikací do služby ACR.
- Nástroje macOS runner od Microsoftu nejsou součástí instalace Dockeru (další informace najdete tady). v důsledku toho tato úloha nemůže spouštět žádné
- Windows
- Aplikace Windows Runners od Microsoftu se dodává s nainstalovaným Dockerem, ale ve výchozím nastavení není možné image založené na Linuxu stáhnout. v důsledku toho tato úloha nemůže stáhnout tvůrce Oryx a vytvořit spustitelné image aplikací z poskytnutého zdroje aplikace.
Další informace najdete v části Požadavky na Docker níže.
Oznámení o shromažďování dat nebo telemetrie
Ve výchozím nastavení tato úloha Azure DevOps shromažďuje pro Microsoft následující údaje:
- Scénář sestavení a nasazení aplikace kontejneru, na který cílí uživatel
- tj. použili nástroj Oryx++ Builder, použili zadaný/nalezený soubor Dockerfile nebo poskytli dříve sestavenou image.
- Poznámka: Název image se neshromažďuje .
- Doba zpracování úlohy v milisekundách
- Výsledek úkolu
- tj. úspěšné nebo neúspěšné
- Pokud se používá Tvůrce Oryx++, události a metriky související s sestavením poskytnuté aplikace pomocí nástroje Oryx
Pokud chcete shromažďování dat zakázat, nastavte disableTelemetry
argument na true
.
Požadavky
Před spuštěním této úlohy jsou prostředky Azure a připojení služby Azure DevOps v závislosti na argumentech zadaných k této úloze povinné nebo volitelné.
Připojení ke službě Azure DevOps
Pokud chcete nasadit do Azure, předplatné Azure musí být propojené s Team Foundation Serverem nebo se službou Azure Pipelines pomocí karty Služby v části Nastavení. Pokud chcete předplatné Azure použít v definici Sestavení nebo Release Management, otevřete obrazovku Správa účtu (ikona ozubeného kola v pravém horním rohu obrazovky) a pak klikněte na kartu Služby.
Vytvořte koncový bod služby ARM a použijte typ koncového bodu Azure Resource Manager. Další informace o vytváření připojení služeb najdete v tomto dokumentu.
Azure CLI
Tato úloha vyžaduje, aby v agentu Azure Pipelines bylo nainstalované Rozhraní příkazového řádku Azure CLI, aby bylo možné spouštět různé příkazy během provádění úlohy. Další informace o instalaci Azure CLI na agenta najdete v tomto dokumentu. Pokud je na počítači, na kterém je nainstalované Rozhraní příkazového řádku Azure, spuštěný agent, nezapomeňte ho restartovat, aby se aktualizovaly všechny relevantní proměnné prostředí.
Docker
Tato úloha vyžaduje, aby byl v agentu Azure Pipelines nainstalovaný Docker, aby bylo možné odesílat image do poskytnuté Azure Container Registry. Další informace o instalaci Dockeru na agenta najdete v tomto dokumentu.
Kromě toho uživatelé, kteří tuto úlohu spouští s agentem pro Windows, můžou narazit na problém s nemožností stáhnout image založené na Linuxu. Pokud chcete tento problém vyřešit, navštivte tento web nebo vyhledejte DockerCli.exe
soubor v agentu (obvykle ve Program Files\Docker\Docker
složce) a spusťte příkaz .
& `.\DockerCli.exe` -SwitchDaemon
Pokud v agentovi, který spouští tuto úlohu, není nainstalovaný Docker, jsou stále povolené následující scénáře:
- Poskytnutí dříve vytvořené image argumentu
imageToDeploy
, se kterým se aplikace kontejneru nasadí
Pokud je Docker v agentovi, ale nemůže pracovat s linuxovými imagemi, jsou stále povolené následující scénáře:
- Poskytnutí dříve vytvořené image argumentu
imageToDeploy
, se kterým se aplikace kontejneru nasadí - Poskytnutí objektu
Dockerfile
jako součásti zdroje aplikace, který se sestaví a nasadí pomocí aplikace kontejneru.- Poznámka: Objekt
Dockerfile
nemůže obsahovat žádné vrstvy imagí založené na Linuxu.
- Poznámka: Objekt
pack CLI
Rozhraní příkazového řádku sady se udržuje v projektu BuildPacks nativní pro cloud a používá ho tato úloha k vytvoření spustitelných imagí aplikací pro uživatele, když je k dispozici zdrojový kód aplikace a není k dispozici ani se nenajde žádný další soubor Dockerfile. Nástroj Oryx vytvořil tvůrce , který převezme zdrojový kód aplikace poskytnutý k tomuto úkolu a vytvoří image, která by se pak dala odeslat do registru imagí a použít v rámci aplikace kontejneru k sestavení a spuštění aplikace.
Na agenta Azure Pipelines, který provádí úlohu, je nainstalovaná stabilní verze rozhraní příkazového řádku balíčku. V závislosti na základním operačním systému tohoto agenta se k instalaci využijí různé nástroje:
- Ve Windows runners:
- Spustí se sada příkazů PowerShellu, které provádějí následující akce:
pack
Vytvoří složku v dočasné složce agenta, pokudpack
ještě neexistuje.- Stáhne rozhraní příkazového řádku
.zip
balíčku do tétopack
složky. - Rozbalí obsah z této
.zip
složky a umístí ho dopack
složky . - Odstraní
.zip
- Spustí se sada příkazů PowerShellu, které provádějí následující akce:
- U jiných než Windows runnerů:
curl
se použije k stažení souboru.tgz
obsahujícíhopack
spustitelný soubor.tar
se použije k rozbalení.tgz
a umístění spustitelnéhopack
souboru do/usr/local/bin
Azure Container Registry
Musí existovat Azure Container Registry, do kterého může uživatel odesílat image kontejneru. Tato úloha bude využívat Azure Container Registry k nasdílení sestavené spustitelné image aplikace do a/nebo k nasazení aplikace kontejneru z.
Název Azure Container Registry se vyžaduje prostřednictvím argumentu acrName
.
Uživatel může také zadat hodnoty argumentů acrUsername
a acrPassword
, které budou ověřovat volání Azure Container Registry instance. Pokud není zadaný, vygeneruje se přístupový token prostřednictvím Azure CLI, který místo toho ověří volání.
Prostředí Azure Container App
Pro zlepšení výkonu úlohy se doporučuje, aby prostředí Azure Container App dříve vytvořil uživatel. Pokud se předtím nevytvořilo žádné prostředí nebo pokud se prostředí nenašlo ve skupině prostředků, která se používá k hostování vytvořené aplikace kontejneru, vytvoří prostředí jako součást az containerapp up
příkazu , což může trvat delší dobu.
Příklady
Následující příklady popisují, jak používat AzureContainerApps
v různých scénářích.
Minimal – sestavení image aplikace pro aplikaci kontejneru
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků s názvem <container-app-name>-rg
. Aplikace kontejneru bude založená na imagi, která byla sestavena ze zadané appSourcePath
a nasdílené do zadané instance ACR. Vygeneruje se přístupový token pro ověření nabízeného oznámení do zadané instance ACR.
Minimální – použijte dříve publikovanou image pro aplikaci kontejneru.
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
imageToDeploy: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků, <container-app-name>-rg
ve které se nesestaví žádná nová image, ale pro aplikaci kontejneru se použije existující image s názvem mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
.
Minimální – použití konfiguračního souboru YAML s dříve publikovanou imagí pro aplikaci kontejneru
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
yamlConfigPath: simple-image-container-app.yaml
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků, <container-app-name>-rg
ve které se nesestaví žádná nová image, ale pro aplikaci kontejneru se použije existující image s názvem mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
. Ze souboru se načte další vlastnosti aplikace kontejneru simple-image-container-app.yaml
, které přepíšou všechny další hodnoty, které by byly úkolu poskytnuty jako argumenty s výjimkou resourceGroup
.
Soubor simple-image-container-app.yaml
má následující strukturu:
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
Hodnoty pro SUBSCRIPTION_ID
a CONTAINER_APP_ENVIRONMENT
se musí aktualizovat tak, RESOURCE_GROUP
aby ukazovaly na úplné ID prostředku existujícího prostředí aplikace kontejneru, které bude aplikace kontejneru používat.
Ověřování pomocí přihlašovacích údajů ACR
steps:
- task: AzureContainerApps@1
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)
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků s názvem <container-app-name>-rg
. Aplikace kontejneru bude založená na imagi, která byla sestavena ze zadané appSourcePath
a nasdílené do zadané instance ACR. Zadané přihlašovací údaje ACR se použijí k ověřování volání instance služby ACR.
Zadaný název aplikace kontejneru
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
containerAppName: 'my-test-container-app'
Tím se vytvoří nová aplikace kontejneru s názvem my-test-container-app
v nové skupině my-test-container-app-rg
prostředků .
Poskytnutá skupina prostředků
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
resourceGroup: 'my-test-rg'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
ve skupině prostředků s názvem my-test-rg
. my-test-rg
Pokud skupina prostředků neexistuje, vytvoří se jako součást tohoto úkolu.
Zadaný název aplikace kontejneru a skupina prostředků
steps:
- task: AzureContainerApps@1
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'
Tím se vytvoří nová aplikace kontejneru s názvem my-test-container-app
ve skupině prostředků s názvem my-test-rg
. my-test-rg
Pokud skupina prostředků neexistuje, vytvoří se jako součást tohoto úkolu.
Poskytnuté prostředí aplikace kontejneru
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
containerAppEnvironment: 'my-test-container-app-env'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině <container-app-name>-rg
prostředků s novým prostředím aplikace kontejneru s názvem my-test-container-app-env
.
Poskytnutý zásobník modulu runtime
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
runtimeStack: 'dotnetcore:7.0'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků s názvem <container-app-name>-rg
, kde spustitelná image aplikace používá zásobník modulu runtime .NET 7.
Byl poskytnut soubor Dockerfile.
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
dockerfilePath: 'test.Dockerfile'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků s názvem <container-app-name>-rg
, kde se ze souboru nalezeného test.Dockerfile
v zadaném adresáři zdrojové cesty aplikace vytvořila spustitelná image aplikace.
Poznámka: Pro hodnoty zadané do dockerfilePath
by neměly být zahrnuty žádné předpony souborů (například./test.Dockerfile
by se měly předávat pouze test.Dockerfile
jako ). Zadané appSourcePath
argumenty a dockerfilePath
se v rámci úkolu zřetězí.
Image to build provided
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
imageToBuild: 'mytestacr.azurecr.io/app:latest'
Tím se vytvoří nová aplikace kontejneru s názvem ado-task-app-<build-id>-<build-number>
v nové skupině prostředků s názvem <container-app-name>-rg
, kde se image sestavená a nasdílená do služby ACR jmenuje mytestacr.azurecr.io/app:latest
.
Požadavky
Požadavek | Popis |
---|---|
Typy kanálů | YAML, classic build, verze Classic |
Spustí se | Agent, DeploymentGroup |
Požadavky | Žádné |
Možnosti | Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze. |
Omezení příkazů | Všechny |
Nastavitelné proměnné | Všechny |
Verze agenta | 2.144.0 nebo vyšší |
Kategorie úloh | Nasadit |