AzureContainerApps@1 - Azure Container Apps Deploy v1-taak
Een Azure DevOps-taak voor het bouwen en implementeren van 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.
Invoerwaarden
workingDirectory
- Werkmap
Invoeralias: cwd
. string
.
Huidige werkmap waarin het script wordt uitgevoerd. Leeg is de hoofdmap van de opslagplaats (build) of artefacten (release), namelijk $(System.DefaultWorkingDirectory).
appSourcePath
- Pad naar toepassingsbron
string
.
Absoluut pad op de runner van de broncode die moet worden gebouwd. Als dit niet wordt opgegeven, moet het argument 'imageToDeploy' worden opgegeven om ervoor te zorgen dat de container-app een installatiekopie heeft waarnaar kan worden verwezen.
Wanneer u een nieuwe installatiekopie naar ACR pusht, zijn de acrName
taakinvoer en appSourcePath
vereist.
azureSubscription
- Azure Resource Manager-verbinding
Invoeralias: connectedServiceNameARM
. string
. Vereist.
Geef een Azure Resource Manager-serviceverbinding op voor de implementatie. Deze serviceverbinding moet worden gekoppeld aan het Azure-abonnement van de gebruiker waar de container-app wordt gemaakt/bijgewerkt. Deze serviceverbinding moet de juiste machtigingen hebben om deze wijzigingen in het abonnement aan te brengen, bijvoorbeeld de rol Inzender.
acrName
- naam van Azure Container Registry
string
.
De naam van de Azure Container Registry waarnaar de uitvoerbare toepassingsinstallatiekopieën worden gepusht.
Wanneer u een nieuwe installatiekopie naar ACR pusht, zijn de acrName
taakinvoer en appSourcePath
vereist.
acrUsername
- gebruikersnaam Azure Container Registry
string
.
De gebruikersnaam die wordt gebruikt voor het verifiëren van pushaanvragen voor het opgegeven Azure Contrainer-register. Als dit niet wordt opgegeven, wordt er een toegangstoken gegenereerd via az acr login en doorgegeven aan docker login om de aanvragen te verifiëren.
acrPassword
- Azure Container Registry wachtwoord
string
.
Het wachtwoord dat wordt gebruikt voor het verifiëren van pushaanvragen voor het opgegeven Azure Contrainer-register. Als dit niet wordt opgegeven, wordt er een toegangstoken gegenereerd via az acr login en doorgegeven aan docker login om de aanvragen te verifiëren.
dockerfilePath
- Pad naar Dockerfile
string
.
Relatief pad (_without bestandsvoorvoegsels (zie de volgende voorbeelden) naar het Dockerfile in de opgegeven toepassingsbron dat moet worden gebruikt om de installatiekopie te bouwen die vervolgens naar ACR wordt gepusht en geïmplementeerd in de Container App. Als deze taak niet wordt opgegeven, wordt gecontroleerd of er een bestand met de naam 'Dockerfile' in de hoofdmap van de opgegeven toepassingsbron staat en wordt dat bestand gebruikt om de installatiekopieën te bouwen. Anders wordt de Oryx++-opbouwfunctie gebruikt om de installatiekopie te maken.
imageToBuild
- Te bouwen Docker-installatiekopieën
string
.
De aangepaste naam van de installatiekopie die door deze taak moet worden gemaakt, naar ACR moet worden gepusht en naar de Container App moet worden geïmplementeerd. Opmerking: deze naam van de installatiekopieën moet de ACR-server bevatten; bijvoorbeeld <acr-name>.azurecr.io/<repo>:<tag>
. Als dit argument niet wordt opgegeven, wordt een standaardnaam voor de installatiekopieën gemaakt in de vorm van <acr-name>.azurecr.io/ado-task/container-app:<build-id>.<build-number>
.
imageToDeploy
- Te implementeren Docker-installatiekopieën
string
.
De naam van de installatiekopie die al naar ACR is gepusht en die door deze taak wordt geïmplementeerd in de Container App. Opmerking: de naam van de installatiekopieën moet de ACR-server bevatten; bijvoorbeeld <acr-name>.azurecr.io/<repo>:<tag>
. Als dit argument niet wordt opgegeven, wordt de opgegeven waarde (of bepaald) voor het argument 'imageToBuild' gebruikt. Als deze installatiekopie wordt gevonden in een ACR-exemplaar waarvoor verificatie is vereist voor het ophalen, kan het acrName
argument of de acrUsername
argumenten en acrPassword
worden opgegeven om aanvragen voor het ACR-exemplaar te verifiëren.
containerAppName
- Naam van Azure Container App
string
.
De naam van de Azure Container App die wordt gemaakt of bijgewerkt. Als deze waarde niet wordt opgegeven, heeft deze de vorm .ado-task-app-<build-id>-<build-number>
resourceGroup
- Naam van Azure-resourcegroep
string
.
De bestaande resourcegroep waarin de Azure Container App wordt gemaakt (of waarin momenteel bestaat). Als deze waarde niet wordt opgegeven, heeft deze de vorm .<container-app-name>-rg
containerAppEnvironment
- Azure Container App-omgeving
string
.
De naam van de Azure Container App-omgeving die met de toepassing moet worden gebruikt. Als deze niet wordt opgegeven, wordt een bestaande omgeving in de resourcegroep van de container-app gebruikt. Anders wordt er een omgeving gemaakt in de indeling .<container-app-name>-env
runtimeStack
- Runtimestack voor toepassingen
string
.
De platformversiestack die wordt gebruikt in de uiteindelijke uitvoerbare toepassingsinstallatiekopie die is geïmplementeerd in de Container App. De waarde moet worden opgegeven in de formatie <platform>:<version>
. Als deze waarde niet wordt opgegeven, wordt deze waarde bepaald door Oryx op basis van de inhoud van de opgegeven toepassing. Raadpleeg dit document voor meer informatie over ondersteunde runtimestacks voor Oryx.
targetPort
- Toepassingsdoelpoort
string
.
De doelpoort waarop de container-app luistert. Als deze waarde niet wordt opgegeven, is deze waarde '80' voor Python-toepassingen en '8080' voor alle andere ondersteunde platforms.
location
- Locatie van de container-app
string
.
De locatie waarop de container-app (en andere gemaakte resources) worden geïmplementeerd.
environmentVariables
- Omgevingsvariabelen
string
.
Een lijst met omgevingsvariabelen voor de container. Door spaties gescheiden waarden in de indeling 'key=value'. Lege tekenreeks om bestaande waarden te wissen. Voorvoegselwaarde met 'secretref:' om te verwijzen naar een geheim.
ingress
- Instelling voor inkomend verkeer
string
.
Mogelijke opties: extern, intern, uitgeschakeld. Als dit is ingesteld op external
(standaardwaarde als deze niet wordt opgegeven bij het maken van een container-app), is de container-app zichtbaar vanaf internet of een VNET, afhankelijk van het geconfigureerde app-omgevingseindpunt. Als dit is ingesteld op internal
, is de container-app alleen zichtbaar vanuit de app-omgeving. Als deze optie is ingesteld op disabled
, wordt inkomend verkeer uitgeschakeld voor deze container-app en heeft het geen HTTP- of TCP-eindpunt.
yamlConfigPath
- Pad naar YAML-configuratiebestand
string
.
Volledig pad (op de azure-pijplijnagent die wordt uitgevoerd) naar het YAML-bestand met details over de configuratie van de Container App.
De resourceGroup
eigenschap in het YAML-configuratiebestand wordt niet gebruikt. De waarde hiervoor is afkomstig van het resourceGroup
argument dat is opgegeven voor de taak of de standaardnaam van de resourcegroep die door de taak wordt gegenereerd. Alle andere eigenschappen in het YAML-configuratiebestand overschrijven de waarden die zijn opgegeven als argumenten voor deze taak; Als het containerAppName
argument bijvoorbeeld is opgegeven voor de taak en de name
eigenschap is ingesteld in het YAML-configuratiebestand, wordt de name
eigenschap in het YAML-bestand gebruikt bij het maken of bijwerken van de container-app.
Argumenten voor installatiekopieën en toepassingsbronnen (bijvoorbeeldappSourcePath
, imageToDeploy
) worden nog steeds gebruikt om eerst een installatiekopieën te bouwen en/of te pushen die wordt gebruikt door de Container App. In dit geval moet het opgegeven YAML-configuratiebestand verwijzen naar de installatiekopieën die zijn opgegeven door imageToDeploy
(of imageToBuild
, afhankelijk van uw scenario).
Wanneer u een nieuwe container-app maakt, worden alle eigenschappen die worden vermeld in het YAML-configuratiebestand (behalve resourceGroup
zoals hierboven vermeld) ingesteld wanneer de container-app wordt gemaakt. Wanneer u een bestaande container-app bijwerkt, worden alleen de eigenschappen in het bestand bijgewerkt in de container-app.
Momenteel biedt het YAML-bestand geen ondersteuning voor het instellen van verificatie van beheerde identiteit voor het gebruikte containerregister; Zie dit GitHub-probleem voor meer informatie over dit probleem.
In gevallen waarin het yamlConfigPath
argument wordt opgegeven, wordt het YAML-bestand doorgegeven aan de bijbehorende az containerapp
opdracht, of create
update
afhankelijk van uw scenario. Zie de documenten die zijn gekoppeld voor de bijbehorende opdrachten voor meer informatie over het beoogde gedrag wanneer het YAML-configuratiebestand wordt opgegeven.
Ga naar deze site voor meer informatie over de structuur van het YAML-configuratiebestand.
disableTelemetry
- Telemetrie uitschakelen
boolean
.
Als deze optie is ingesteld op 'true', wordt er geen telemetrie verzameld door deze Azure DevOps-taak. Als dit is ingesteld op 'false' of als dit argument niet wordt opgegeven, wordt er telemetrie verzonden naar Microsoft over het scenario voor het bouwen en implementeren van container-apps waarop deze Azure DevOps-taak is gericht.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties voor besturingselementen en algemene taakeigenschappen voor meer informatie.
Uitvoervariabelen
Geen.
Opmerkingen
Met deze Azure Pipelines-taak kunnen gebruikers hun toepassingsbron eenvoudig implementeren in een Azure Container App in hun Azure Pipelines-werkstroom door een eerder gebouwde installatiekopieën, een Dockerfile op te geven waaruit een installatiekopieën kunnen worden gemaakt of door een opbouwfunctie te gebruiken om een uitvoerbare toepassingsinstallatiekopieën voor de gebruiker te maken.
De taak heeft de volgende twee gebruikspatronen.
- Een installatiekopie naar ACR pushen : wanneer u een nieuwe installatiekopie naar ACR pusht, zijn de
acrName
taakinvoer enappSourcePath
vereist. - Een eerder gepushte installatiekopie implementeren: wanneer u een eerder gepushte installatiekopie implementeert, is de
imageToDeploy
taakinvoer vereist. Als deze installatiekopie wordt gevonden in een ACR-exemplaar waarvoor verificatie is vereist voor het ophalen, kan hetacrName
argument of deacrUsername
argumenten enacrPassword
worden opgegeven om aanvragen voor het ACR-exemplaar te verifiëren.
Notitie
Hoewel er geen taakinvoer officieel is gemarkeerd als 'vereist' in de metagegevens van deze taak, moeten er enkele invoergegevens worden opgegeven om deze taak te kunnen uitvoeren met behulp van een van de twee belangrijkste gebruiksparameters.
Als er geen Dockerfile wordt gevonden of opgegeven in de opgegeven toepassingsbron, worden de volgende stappen uitgevoerd door deze taak:
- Gebruikt de Oryx++ Builder om de toepassingsbron te bouwen met behulp van Oryx om een uitvoerbare toepassingsinstallatiekopie te produceren
- Pusht deze uitvoerbare toepassingsinstallatiekopieën naar de opgegeven Azure Container Registry
- Een container-app maken of bijwerken op basis van deze installatiekopieën
Als er een Dockerfile wordt gevonden of gedetecteerd in de toepassingsbron, wordt de opbouwfunctie niet gebruikt en wordt de installatiekopieën gebouwd met een aanroep naar docker build
en wordt de container-app gemaakt of bijgewerkt op basis van deze installatiekopieën.
Als een eerder gemaakte installatiekopie al naar het ACR-exemplaar is gepusht en aan deze taak wordt geleverd, is er geen toepassingsbron vereist en wordt de installatiekopie gebruikt bij het maken of bijwerken van de container-app.
Deze taak uitvoeren op door Microsoft gehoste agents
Als u deze taak uitvoert op een door Microsoft gehoste agent, kan deze taak mogelijk niet worden uitgevoerd met de volgende besturingssystemen:
- macOS
- De macOS-runners van Microsoft worden niet geleverd met Docker ( meer informatie hier); als gevolg hiervan kan deze taak geen
docker
opdrachten uitvoeren, zoals het pushen van de ingebouwde uitvoerbare toepassingsinstallatiekopieën naar ACR.
- De macOS-runners van Microsoft worden niet geleverd met Docker ( meer informatie hier); als gevolg hiervan kan deze taak geen
- Windows
- De Windows-runners van Microsoft worden geleverd met Docker geïnstalleerd, maar standaard kunnen installatiekopieën op basis van Linux niet worden opgehaald; als gevolg hiervan kan deze taak de Oryx-opbouwfunctie niet ophalen om uitvoerbare toepassingsinstallatiekopieën te maken van de opgegeven toepassingsbron.
Zie de onderstaande sectie met Docker-vereisten voor meer informatie.
Kennisgeving over gegevens-/telemetrieverzameling
Deze Azure DevOps-taak verzamelt standaard de volgende gegevens voor Microsoft:
- Het scenario voor het bouwen en implementeren van container-apps waarop de gebruiker is gericht
- d.w., de Oryx++-opbouwfunctie gebruikt, een opgegeven/gevonden Dockerfile gebruikt of een eerder gebouwde installatiekopie verstrekt
- Opmerking: de naam van de afbeelding wordt niet verzameld
- De verwerkingstijd van de taak, in milliseconden
- Het resultaat van de taak
- d.w., geslaagd of mislukt
- Als de Oryx++ Builder wordt gebruikt, gebeurtenissen en metrische gegevens met betrekking tot het bouwen van de opgegeven toepassing met behulp van Oryx
Als u het verzamelen van gegevens wilt uitschakelen, stelt u het disableTelemetry
argument in op true
.
Vereisten
Voordat u deze taak uitvoert, zijn Azure-resources en een Azure DevOps-serviceverbinding vereist of optioneel, afhankelijk van de argumenten die voor deze taak zijn opgegeven.
Azure DevOps-serviceverbinding
Als u wilt implementeren in Azure, moet een Azure-abonnement worden gekoppeld aan Team Foundation Server of aan Azure Pipelines met behulp van het tabblad Services in de sectie Instellingen. Voeg het Azure-abonnement toe dat moet worden gebruikt in de definitie van build- of releasebeheer door het scherm Accountbeheer te openen (tandwielpictogram in de rechterbovenhoek van het scherm) en vervolgens op het tabblad Services te klikken.
Maak het ARM-service-eindpunt en gebruik het eindpunttype 'Azure Resource Manager'. Volg dit document voor meer informatie over het maken van serviceverbindingen.
Azure CLI
Voor deze taak moet de Azure CLI zijn geïnstalleerd op de Azure Pipelines-agent om verschillende opdrachten uit te voeren tijdens de uitvoering van de taak. Raadpleeg dit document voor meer informatie over het installeren van de Azure CLI op de agent. Als er al een agent wordt uitgevoerd op de computer waarop de Azure CLI is geïnstalleerd, moet u ervoor zorgen dat u de agent opnieuw start, zodat alle relevante omgevingsvariabelen worden bijgewerkt.
Docker
Voor deze taak moet Docker zijn geïnstalleerd op de Azure Pipelines-agent om installatiekopieën naar de opgegeven Azure Container Registry te pushen. Raadpleeg dit document voor meer informatie over het installeren van Docker op de agent.
Bovendien kunnen gebruikers die deze taak uitvoeren met een Windows-agent een probleem ondervinden met het niet kunnen ophalen van linux-installatiekopieën; om dit op te lossen, gaat u naar deze site of bevindt u het DockerCli.exe
bestand op uw agent (meestal in de map) en voert u het Program Files\Docker\Docker
uit
& `.\DockerCli.exe` -SwitchDaemon
Als Docker niet is geïnstalleerd op de agent die deze taak uitvoert, zijn de volgende scenario's nog steeds ingeschakeld:
- Een eerder gemaakte installatiekopieën opgeven voor het
imageToDeploy
argument waarmee de container-app wordt geïmplementeerd
Als Docker zich op de agent bevindt, maar niet kan werken met Linux-installatiekopieën, zijn de volgende scenario's nog steeds ingeschakeld:
- Een eerder gemaakte installatiekopieën opgeven voor het
imageToDeploy
argument waarmee de container-app wordt geïmplementeerd - Een
Dockerfile
opgeven als onderdeel van uw toepassingsbron die wordt gebouwd en geïmplementeerd met de container-app- Opmerking: de
Dockerfile
kan geen op Linux gebaseerde installatiekopieënlaag hebben
- Opmerking: de
CLI inpakken
De CLI van het pakket wordt onderhouden door het Cloud Native Buildpacks-project en wordt door deze taak gebruikt om uitvoerbare toepassingsinstallatiekopieën voor de gebruiker te maken wanneer de broncode van de toepassing wordt opgegeven en er geen extra Dockerfile wordt opgegeven of gevonden. Er is een opbouwfunctie gemaakt door Oryx om de broncode van de toepassing op te nemen die voor deze taak is opgegeven en een installatiekopie te produceren die vervolgens naar een installatiekopieregister kan worden gepusht en in een container-app kan worden gebruikt om de toepassing te bouwen en uit te voeren.
Er wordt een stabiele versie van de PAKKET-CLI geïnstalleerd op de Azure Pipelines-agent die de taak uitvoert. Afhankelijk van het basisbesturingssysteem van deze agent worden verschillende hulpprogramma's gebruikt om te helpen bij de installatie:
- Op Windows-runners:
- Een set PowerShell-opdrachten wordt uitgevoerd om het volgende te doen:
- Hiermee maakt u een
pack
map in de tijdelijke map van de agent, als depack
map nog niet bestaat - Downloadt de PAKKET-CLI
.zip
naar dezepack
map - Pakt de inhoud hiervan
.zip
uit en plaatst deze in depack
map - Hiermee verwijdert u de
.zip
- Hiermee maakt u een
- Een set PowerShell-opdrachten wordt uitgevoerd om het volgende te doen:
- Op niet-Windows-runners:
curl
wordt gebruikt om de.tgz
met hetpack
uitvoerbare bestand op te halentar
wordt gebruikt om de.tgz
uit te pakken en hetpack
uitvoerbare bestand in/usr/local/bin
Azure Container Registry
Er moet een Azure Container Registry bestaan waarnaar de gebruiker containerinstallatiekopieën kan pushen. Deze taak maakt gebruik van de Azure Container Registry om een ingebouwde uitvoerbare toepassingsinstallatiekopieën te pushen naar en/of een container-app te implementeren.
De naam van de Azure Container Registry is vereist via het acrName
argument.
De gebruiker kan ook waarden opgeven voor de acrUsername
argumenten en acrPassword
waarmee aanroepen naar het Azure Container Registry-exemplaar worden geverifieerd. Als dit niet is opgegeven, wordt er een toegangstoken gegenereerd via de Azure CLI waarmee de aanroepen in plaats daarvan worden geverifieerd.
Azure Container App-omgeving
Een Azure Container App-omgeving wordt aanbevolen om eerder door de gebruiker te zijn gemaakt om de prestaties van de taak te verbeteren. Als er nog geen omgeving is gemaakt of als er geen omgeving kan worden gevonden in de resourcegroep die wordt gebruikt om de gemaakte Container App te hosten, wordt er een omgeving gemaakt door als onderdeel van de az containerapp up
opdracht, wat extra tijd kan duren.
Voorbeelden
In de volgende voorbeelden wordt beschreven hoe u de AzureContainerApps
in verschillende scenario's gebruikt.
Minimaal: toepassingsinstallatiekopieën bouwen voor Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
. De container-app wordt gebaseerd op een installatiekopieën die is gebouwd op basis van de opgegeven appSourcePath
en naar het opgegeven ACR-exemplaar is gepusht. Er wordt een toegangstoken gegenereerd om de push naar het opgegeven ACR-exemplaar te verifiëren.
Minimaal: eerder gepubliceerde installatiekopieën gebruiken voor Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
imageToDeploy: mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
waar geen nieuwe installatiekopieën worden gemaakt, maar er wordt een bestaande installatiekopieën met de naam mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
gebruikt voor de container-app.
Minimaal: YAML-configuratiebestand gebruiken met eerder gepubliceerde installatiekopieën voor Container App
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
yamlConfigPath: simple-image-container-app.yaml
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
waar geen nieuwe installatiekopieën worden gemaakt, maar er wordt een bestaande installatiekopieën met de naam mcr.microsoft.com/azuredocs/containerapps-helloworld:latest
gebruikt voor de container-app. Aanvullende eigenschappen over de container-app worden opgehaald uit het simple-image-container-app.yaml
bestand en overschrijven eventuele aanvullende waarden die aan de taak zouden zijn opgegeven als argumenten , met uitzondering resourceGroup
van .
Het simple-image-container-app.yaml
bestand heeft de volgende structuur:
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
De waarden voor SUBSCRIPTION_ID
, RESOURCE_GROUP
en CONTAINER_APP_ENVIRONMENT
moeten worden bijgewerkt om te verwijzen naar de volledige resource-id van de bestaande Container App-omgeving die door de Container App wordt gebruikt.
ACR-referenties gebruiken om te verifiëren
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)
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
. De container-app wordt gebaseerd op een installatiekopieën die is gebouwd op basis van de opgegeven appSourcePath
en naar het opgegeven ACR-exemplaar is gepusht. De opgegeven ACR-referenties worden gebruikt om aanroepen naar het ACR-exemplaar te verifiëren.
Opgegeven container-app-naam
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'
Hiermee maakt u een nieuwe container-app met de naam my-test-container-app
in een nieuwe resourcegroepnaam my-test-container-app-rg
.
Resourcegroep opgegeven
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'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een resourcegroep met de naam my-test-rg
. Als de my-test-rg
resourcegroep niet bestaat, wordt deze gemaakt als onderdeel van deze taak.
Opgegeven container-app-naam en resourcegroep
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'
Hiermee maakt u een nieuwe container-app met de naam my-test-container-app
in een resourcegroep met de naam my-test-rg
. Als de my-test-rg
resourcegroep niet bestaat, wordt deze gemaakt als onderdeel van deze taak.
Opgegeven Container App-omgeving
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'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
met een nieuwe Container App-omgeving met de naam my-test-container-app-env
.
Runtimestack opgegeven
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'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
waar de uitvoerbare toepassingsinstallatiekopieën gebruikmaken van de .NET 7-runtimestack.
Dockerfile opgegeven
steps:
- task: AzureContainerApps@1
displayName: Build and deploy Container App
inputs:
connectedServiceNameARM: 'azure-subscription-service-connection'
appSourcePath: '$(System.DefaultWorkingDirectory)'
acrName: 'mytestacr'
dockerfilePath: 'test.Dockerfile'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
waar de uitvoerbare toepassingsinstallatiekopieën zijn gemaakt op basis van het test.Dockerfile
bestand in de opgegeven bronpadmap van de toepassing.
Opmerking: voor waarden die worden opgegeven aan dockerfilePath
, moeten geen bestandsvoorvoegsels worden opgenomen (bijvoorbeeld./test.Dockerfile
moeten worden doorgegeven als alleen test.Dockerfile
). De opgegeven appSourcePath
argumenten en dockerfilePath
worden samengevoegd in de taak.
Installatiekopieën die moeten worden gebouwd
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'
Hiermee maakt u een nieuwe container-app met de naam ado-task-app-<build-id>-<build-number>
in een nieuwe resourcegroep met de naam <container-app-name>-rg
waarin de installatiekopieën die zijn gebouwd en naar ACR worden gepusht, de naam mytestacr.azurecr.io/app:latest
hebben.
Vereisten
Vereiste | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
Eisen | Geen |
Functies | Deze taak voldoet niet aan eventuele vereisten voor volgende taken in de taak. |
Opdrachtbeperkingen | Alle |
Instelbare variabelen | Alle |
Agentversie | 2.144.0 of hoger |
Taakcategorie | Implementeren |