Sdílet prostřednictvím


AzureContainerApps@1 – Úloha Nasazení služby 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 se skript spouští. Prázdný je kořen úložiště (sestavení) nebo artefaktů (verze), což je $(System.DefaultWorkingDirectory).


appSourcePath - cesta ke zdroji aplikace
string.

Absolutní cesta ke spouštěči zdrojového kódu aplikace, který se má sestavit. Pokud není zadaný, musí být k dispozici argument imageToDeploy, aby se zajistilo, že kontejnerová aplikace obsahuje image, na která se má odkazovat.

Při nahrání nové image do služby ACR se vyžadují vstupy acrName a appSourcePath úkolu.


azureSubscription - připojení Azure Resource Manageru
Vstupní alias: connectedServiceNameARM. string. Požadovaný.

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, kde 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 služby Azure Container Registry
string.

Název služby Azure Container Registry, do které se nasdílí image spustitelné aplikace.

Při nahrání nové image do služby ACR se vyžadují vstupy acrName a appSourcePath úkolu.


acrUsername - uživatelské jméno služby Azure Container Registry
string.

Uživatelské jméno použité k ověření nabízených požadavků do poskytnutého registru Azure Contrainer. Pokud ho nezadáte, vygeneruje se přístupový token prostřednictvím příkazu az acr login a poskytne se k ověření požadavků docker login.


acrPassword - heslo služby Azure Container Registry
string.

Heslo použité k ověření nabízených požadavků do poskytnutého registru Azure Contrainer. Pokud ho nezadáte, vygeneruje se přístupový token prostřednictvím příkazu az acr login a poskytne se k ověření požadavků docker login.


cesta k souboru Dockerfile dockerfilePath -
string.

Relativní cesta (_without předpony souboru (viz následující Příklady) k souboru Dockerfile v poskytnutém zdroji aplikace, který by se měl použít k sestavení image, která se pak odešle do ACR a nasadí do kontejnerové aplikace. Pokud není zadaný, tato úloha zkontroluje, jestli v kořenovém adresáři poskytnutého zdroje aplikace existuje soubor s názvem Dockerfile, a použije ho k sestavení image. Jinak se k vytvoření image použije Tvůrce Oryx++.


imageToBuild - image Dockeru pro sestavení
string.

Vlastní název image, která se má sestavit, nasdílení do ACR a nasazení do kontejnerové aplikace touto úlohou. Poznámka: Tento název image by měl obsahovat server ACR; např. <acr-name>.azurecr.io/<repo>:<tag>. Pokud tento argument není zadán, vytvoří se výchozí název image ve formě <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 služby ACR, se nasadí do kontejnerové aplikace touto úlohou. 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í k přijetí změn, argument acrName nebo acrUsername a acrPassword argumenty, je možné zadat k ověření požadavků na instanci služby ACR.


containerAppName - název aplikace kontejneru Azure
string.

Název aplikace kontejneru Azure, která se vytvoří nebo aktualizuje. Pokud není zadaná, bude tato hodnota ve formě 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 není zadaná, bude tato hodnota ve formě <container-app-name>-rg.


containerAppEnvironment - prostředí Azure Container App environment
string.

Název prostředí Azure Container App pro použití s aplikací. Pokud není k dispozici, použije se existující prostředí ve skupině prostředků kontejnerové aplikace, jinak se prostředí vytvoří ve formátu <container-app-name>-env.


runtimeStack - zásobník modulu runtime aplikace
string.

Sada verzí platformy použitá v konečné spustitelné imagi aplikace nasazené do kontejnerové aplikace. Hodnota by měla být poskytnuta ve formaci <platform>:<version>. Pokud tuto hodnotu nezadá, 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 tuto hodnotu nezadáte, bude tato hodnota 80 pro aplikace Pythonu a 8080 pro všechny ostatní podporované platformy.


location - umístění kontejnerové aplikace
string.

Umístění, do kterého se nasadí aplikace kontejneru (a další vytvořené prostředky).


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 pro vymazání existujících hodnot. Hodnota předpony s hodnotou secretref:, která odkazuje na tajný klíč.


nastavení příchozího přenosu dat ingress -
string.

Možné možnosti: externí, interní, zakázané. Pokud je při vytváření kontejnerové aplikace nastavená na external (výchozí hodnota), bude aplikace kontejneru viditelná z internetu nebo virtuální sítě v závislosti na nakonfigurované koncovém bodu prostředí aplikace. Pokud je nastavená hodnota internal, bude aplikace kontejneru viditelná jenom v prostředí aplikace. Pokud je nastavená hodnota disabled, příchozí přenos dat se pro tuto kontejnerovou aplikaci zakáže a nebude mít koncový bod HTTP nebo TCP.


cesta ke konfiguračnímu souboru YAML yamlConfigPath -
string.

Úplná cesta (na prováděcím agentu Azure Pipelines) k souboru YAML s podrobnostmi o konfiguraci kontejnerové aplikace.

Vlastnost resourceGroup v konfiguračním souboru YAML nebude použita; Hodnota pro tuto hodnotu buď pochází z argumentu resourceGroup zadaného úkolu, nebo výchozí název skupiny prostředků vygenerovaný úkolem. Všechny ostatní vlastnosti zadané v konfiguračním souboru YAML přepíší hodnoty zadané jako argumenty pro tuto úlohu; Pokud je například pro úkol zadaný argument containerAppName a vlastnost name je nastavena v konfiguračním souboru YAML, použije se name vlastnost v souboru YAML při vytváření nebo aktualizaci aplikace kontejneru.

Image a argumenty zdroje aplikace (například, appSourcePath, imageToDeploy) se budou nadále používat k prvnímu sestavení a/nebo nasdílení image, která je používána aplikací kontejneru; v tomto případě musí zadaný konfigurační soubor YAML odkazovat na image určenou imageToDeploy (nebo imageToBuildv závislosti na vašem scénáři).

Při vytváření nové aplikace kontejneru se při vytvoření kontejnerové aplikace nastaví všechny vlastnosti uvedené v konfiguračním souboru YAML (s výjimkou resourceGroup, jak je uvedeno výše). Při aktualizaci existující aplikace kontejneru se v aplikaci Container App 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 tématu tomto problému na GitHubu.

V případech, kdy je zadaný argument yamlConfigPath, se soubor YAML předá odpovídajícímu příkazu az containerapp, a to buď create, nebo update v závislosti na vašem scénáři. Další informace o zamýšleném chování při zadání konfiguračního souboru YAML najdete v dokumentech propojených s odpovídajícími příkazy.

Další informace o struktuře konfiguračního souboru YAML naleznete na tomto webu.


disableTelemetry - Zakázání telemetrie
boolean.

Pokud je nastavená hodnota true, tato úloha Azure DevOps neshromáždí žádnou telemetrii. Pokud je nastavená hodnota false nebo pokud tento argument není zadaný, telemetrie se odešle Do Microsoftu o scénáři sestavení a nasazení kontejnerové aplikace, na který cílí tato úloha Azure DevOps.


Možnosti řízení úkolů

Všechny úkoly mají kromě vstupů úkolů také možnosti řízení. Další informace naleznete v tématu Možnosti ovládacího prvku a běžné vlastnosti úloh.

Výstupní proměnné

Žádný.

Poznámky

Tato úloha Azure Pipelines umožňuje uživatelům snadno nasadit zdroj aplikace do azure Container App v pracovním postupu Azure Pipelines tím, že buď poskytne dříve vytvořenou image, soubor Dockerfile, ze kterého může být image sestavená, nebo pomocí tvůrce k vytvoření spustitelné image aplikace pro uživatele.

Úloha má následující dva vzory použití.

  • nasdílením image do ACR – při nahrání nové image do služby ACR se vyžadují vstupy acrName a appSourcePath úloh.
  • Nasazení dříve nasdílené image – při nasazení dříve nasdílené image se vyžaduje vstup imageToDeploy úlohy. Pokud se tato image nachází v instanci služby ACR, která vyžaduje ověření k přijetí změn, argument acrName nebo acrUsername a acrPassword argumenty, je možné zadat k ověření požadavků na instanci služby 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 vzorů použití.

Pokud se v poskytnutém zdroji aplikace nenajde žádný soubor Dockerfile nebo ho nezadá, provede tato úloha následující kroky:

  • Pomocí Tvůrce Oryx++ sestaví zdroj aplikace pomocí Oryx k vytvoření spustitelné image aplikace.
  • Odešle tuto spustitelnou image aplikace do poskytnuté služby Azure Container Registry.
  • Vytvoří nebo aktualizuje kontejnerovou aplikaci 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í s voláním docker build a aplikace kontejneru se vytvoří nebo aktualizuje na základě této image.

Pokud už byla dříve sestavená image vložena 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 kontejnerové aplikace.

Spuštění této úlohy na agentech hostovaných Microsoftem

Pokud tuto úlohu spouštíte na agenta hostovaného Microsoftem, můžete zjistit, že tato úloha není není úspěšně spuštěna s následujícími operačními systémy:

  • macOS
    • Spouštěče macOS poskytované Microsoftem nenainstalují s Dockerem (další informace zde); V důsledku toho nemůže tato úloha spustit žádné příkazy docker, jako je například nasdílením sestavených imagí spustitelných aplikací do ACR.
  • Windows
    • spouštěče Windows poskytované Microsoftem se dodává s nainstalovaným Dockerem, ale ve výchozím nastavení není možné stáhnout image založené na Linuxu; V důsledku toho nemůže tato úloha stáhnout tvůrce Oryx a vytvořit spustitelné image aplikací ze zadaného zdroje aplikace.

Další informace najdete v následující části požadavky Dockeru.

Oznámení o shromažďování dat a telemetrie

Ve výchozím nastavení tato úloha Azure DevOps shromažďuje pro Microsoft následující údaje:

  • Scénář sestavení a nasazení kontejnerové aplikace, na který uživatel cílí
    • tj., použili Tvůrce Oryx++, použili zadaný/nalezený soubor Dockerfile nebo zadali dříve vytvořenou 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í Oryxu

Pokud chcete zakázat shromažďování dat, nastavte argument disableTelemetry na true.

Požadavky

Před spuštěním této úlohy jsou prostředky Azure a připojení služby Azure DevOps buď povinné, nebo volitelné v závislosti na argumentech zadaných pro tento úkol.

Připojení ke službě Azure DevOps

Pokud chcete nasadit do Azure, musí být předplatné Azure propojené s Team Foundation Serverem nebo s Azure Pipelines pomocí karty Služby v části Nastavení. Přidejte předplatné Azure, které se má použít v definici Build or Release Management, otevřením obrazovky Správa účtu (ikona ozubeného kolečka v pravém horním rohu obrazovky) a potom klikněte na kartu Služby.

Vytvořte koncový bod služby ARM a použijte typ koncového bodu Azure Resource Manageru; Další informace o vytváření připojení služeb naleznete v tomto dokumentu.

Azure CLI

Tato úloha vyžaduje, aby se v agentu Azure Pipelines nainstalovalo Rozhraní příkazového řádku Azure, aby se během provádění úlohy spustila celá řada příkazů. Další informace o instalaci Azure CLI na agenta najdete v tomto dokumentu. Pokud už agent běží na počítači, na kterém je nainstalované Rozhraní příkazového řádku Azure, nezapomeňte agenta restartovat, aby se aktualizovaly všechny relevantní proměnné prostředí.

Dokař

Tato úloha vyžaduje, aby byl Docker nainstalovaný v agentu Azure Pipelines, aby nasdíll image do poskytnuté služby Azure Container Registry. Další informace o instalaci Dockeru na agenta najdete v tomto dokumentu.

Uživatelé, kteří používají tuto úlohu s agentem systému Windows, mohou navíc narazit na problém s nemožností stáhnout image založené na Linuxu; pokud chcete tento problém vyřešit, vyhledejte soubor DockerCli.exe ve vašem agentu (obvykle ve složce Program Files\Docker\Docker) a spusťte příkaz .

& `.\DockerCli.exe` -SwitchDaemon

Pokud do agenta, na kterém běží tato úloha, nenainstaluje Docker, jsou stále povolené následující scénáře:

  • Poskytnutí dříve vytvořené image do argumentu imageToDeploy, pomocí kterého se nasadí kontejnerová aplikace

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 do argumentu imageToDeploy, pomocí kterého se nasadí kontejnerová aplikace
  • Poskytnutí Dockerfile jako součást zdroje aplikace, který se sestaví a nasadí pomocí kontejnerové aplikace.
    • poznámka: Dockerfile nemůže mít žádné vrstvy image založené na Linuxu.

Pack CLI

Rozhraní příkazového řádku sady pack udržuje projekt Buildpacks nativní pro cloud a tento úkol ho používá k vytvoření spustitelných imagí aplikací pro uživatele, když je poskytnut zdrojový kód aplikace a není k dispozici žádný další soubor Dockerfile ani se nenajde. tvůrce vytvořil Oryx, aby převzal zdrojový kód aplikace poskytnutý této úloze a vytvořil image, která se pak mohla odeslat do registru imagí a použít ji v rámci kontejnerové aplikace k sestavení a spuštění aplikace.

V agentu Azure Pipelines, který spouští úlohu, je nainstalovaná stabilní verze rozhraní příkazového řádku balíčku a v závislosti na základním operačním systému tohoto agenta budou k usnadnění instalace využívat různé nástroje:

  • Ve Windows runners:
    • Provede se sada příkazů PowerShellu, která provede následující akce:
      • Vytvoří složku pack v dočasné složce agenta, pokud složka pack ještě neexistuje.
      • Stáhne rozhraní příkazového řádku balíčku .zip do této složky pack.
      • Rozbalí obsah z tohoto .zip a umístí je do složky pack.
      • Odstraní .zip.
  • U spouštěčů jiných systémů než Windows:
    • curl se použije k stažení .tgz obsahující spustitelný soubor pack.
    • tar se použije k rozbalení .tgz a umístění spustitelného souboru pack do /usr/local/bin

Azure Container Registry

azure Container Registry musí existovat, aby uživatel mohl odesílat image kontejneru. Tato úloha bude využívat službu Azure Container Registry k nasdílení vytvořené image spustitelné aplikace do a/nebo nasazení kontejnerové aplikace z.

Název služby Azure Container Registry se vyžaduje prostřednictvím argumentu acrName.

Uživatel může také zadat hodnoty pro acrUsername a acrPassword argumenty, které budou ověřovat volání instance služby Azure Container Registry; 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

Doporučuje se, aby uživatel dříve vytvořil prostředí Azure Container App, aby zlepšil výkon úlohy. Pokud se předtím žádné prostředí nevytvořilo nebo pokud se prostředí nenašlo ve skupině prostředků, která se používá k hostování vytvořené kontejnerové aplikace, vytvoří se prostředí jako součást příkazu az containerapp up, 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 kontejnerovou aplikaci

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. Kontejnerová aplikace bude založená na imagi vytvořené z poskytnuté appSourcePath a nasdílené do poskytnuté instance ACR. Přístupový token se vygeneruje pro ověření nabízeného zápisu do poskytnuté instance ACR.

Minimální – použití dříve publikované image pro kontejnerovou aplikaci

steps:
- task: AzureContainerApps@1
  displayName: Build and deploy Container App
  inputs:
    connectedServiceNameARM: 'azure-subscription-service-connection'
    imageToDeploy: mcr.microsoft.com/<existing-image>: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 není vytvořena žádná nová image, ale pro kontejnerovou aplikaci se použije existující image s názvem mcr.microsoft.com/<existing-image>:latest.

Minimální – Použití konfiguračního souboru YAML s dříve publikovanou imagí pro container App

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ů s názvem <container-app-name>-rg, kde není vytvořena žádná nová image, ale pro kontejnerovou aplikaci se použije existující image s názvem mcr.microsoft.com/<existing-image>:latest. Další vlastnosti o kontejnerové aplikaci se načte ze souboru simple-image-container-app.yaml a přepíší 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/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_APP_ENVIRONMENT
  configuration:
    ingress:
      external: true
      allowInsecure: false
      targetPort: 80
  template:
    containers:
      - image: mcr.microsoft.com/<existing-image>:latest
        name: mysampleimagecontainer

Hodnoty pro SUBSCRIPTION_ID, RESOURCE_GROUP a CONTAINER_APP_ENVIRONMENT musí být aktualizovány tak, aby ukazovaly na úplné ID prostředku existujícího prostředí Container App environment, které bude kontejnerová aplikace používat.

Použití přihlašovacích údajů ACR k ověření

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. Kontejnerová aplikace bude založená na imagi vytvořené z poskytnuté appSourcePath a nasdílené do poskytnuté instance ACR. Zadané přihlašovací údaje ACR se použijí k ověření volání instance 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 názvu nové skupiny prostředků my-test-container-app-rg.

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á kontejnerová aplikace s názvem ado-task-app-<build-id>-<build-number> ve skupině prostředků s názvem my-test-rg. Pokud skupina prostředků my-test-rg 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á kontejnerová aplikace s názvem my-test-container-app ve skupině prostředků s názvem my-test-rg. Pokud skupina prostředků my-test-rg neexistuje, vytvoří se jako součást tohoto úkolu.

Zadané prostředí Container App

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ě prostředků s názvem <container-app-name>-rg s novým prostředím container App 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 spuštěná image aplikace používá zásobník modulu runtime .NET 7.

Zadaný 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 image spustitelné aplikace vytvořila ze souboru test.Dockerfile nalezeného v zadaném adresáři zdrojové cesty aplikace.

Poznámka: pro hodnoty zadané pro dockerfilePathby neměly být zahrnuty žádné předpony souborů (například, ./test.Dockerfile by se měly předávat jako test.Dockerfile). Zadané appSourcePath a dockerfilePath argumenty budou zřetězeny uvnitř úkolu.

Image k sestavení je k dispozici

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á kontejnerová aplikace s názvem ado-task-app-<build-id>-<build-number> v nové skupině prostředků s názvem <container-app-name>-rg, ve které je image vytvořená a vložená do služby ACR pojmenována mytestacr.azurecr.io/app:latest.

Požadavky

Požadavek Popis
Typy kanálů YAML, klasické sestavení, klasická verze
Běží na Agent, DeploymentGroup
požadavky Žádný
možnosti Tento úkol nesplňuje žádné požadavky na následné úkoly v úloze.
omezení příkazů Jakýkoliv
nastavitelné proměnné Jakýkoliv
Verze agenta 2.144.0 nebo vyšší
Kategorie úkolu Nasadit

Viz také