Sdílet prostřednictvím


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ů a appSourcePath .
  • 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 nebo acrUsername argumenty a acrPassword 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.
  • 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.

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, pokud pack ještě neexistuje.
      • Stáhne rozhraní příkazového řádku .zip balíčku do této pack složky.
      • Rozbalí obsah z této .zip složky a umístí ho do pack složky .
      • Odstraní .zip
  • U jiných než Windows runnerů:
    • curl se použije k stažení souboru .tgz obsahujícího pack spustitelný soubor.
    • tar se použije k rozbalení .tgz a umístění spustitelného pack 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_IDa 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-rgprostř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 dockerfilePathby neměly být zahrnuty žádné předpony souborů (například./test.Dockerfile by se měly předávat pouze test.Dockerfilejako ). 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

Viz také