Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Naast een snelle taak bieden ACR-taken ondersteuning voor werkstromen op basis van meerdere stappen en meerdere containers, die automatisch kunnen worden geactiveerd wanneer u broncode toewijst in een Git-repository.
In deze zelfstudie gebruikt u YAML-voorbeeldbestanden om taken met meerdere stappen te definiëren voor het maken, uitvoeren en pushen van een of meer containerinstallatiekopieën naar een register bij het doorvoeren van broncode. Zie Tutorial: Containerinstallatiekopieën automatiseren in de cloud wanneer u broncode doorvoert om een taak te maken die automatisch slechts één installatiekopie bouwt bij het doorvoeren van code. Zie Besturingssysteem- en frameworkpatching automatiseren met ACR-taken voor een overzicht van ACR-taken.
In deze handleiding:
- Een taak met meerdere stappen definiëren met behulp van een YAML-bestand
- Een taak maken
- Referenties aan de taak toevoegen om toegang tot een ander register mogelijk te maken (optioneel)
- De taak testen
- Taakstatus weergeven
- De taak activeren met een code-doorvoer
In deze zelfstudie wordt ervan uitgegaan dat u de stappen in de vorige zelfstudie hebt voltooid. Als u dit nog niet hebt gedaan, voert u de stappen in de sectie Vereisten van de vorige zelfstudie uit voordat u doorgaat.
Vereisten
Voorbeeldcode ophalen
In deze handleiding gaan we ervan uit dat u de stappen in de vorige handleiding hebt voltooid en dat u de voorbeeldrepository hebt geforkt en gekloond. Als u dit nog niet hebt gedaan, voert u de stappen in de sectie Vereisten van de vorige zelfstudie uit voordat u doorgaat.
Containerregister
U moet een Azure-containerregister in uw Azure-abonnement hebben om deze zelfstudie te voltooien. Als u een register nodig hebt, zie dan de vorige zelfstudie of Snelstartgids: Een containerregister maken met de Azure CLI.
Een persoonlijk toegangstoken van GitHub maken
Om een taak te activeren bij een doorvoering naar een Git-opslagplaats, hebben ACR-taken een persoonlijk toegangstoken (PAT) nodig om toegang te krijgen tot de opslagplaats. Als u nog geen PAT hebt, voert u de volgende stappen uit om er een in GitHub te genereren:
Navigeer naar de pagina PAT maken op GitHub op https://github.com/settings/tokens/new
Geef een korte beschrijving voor het token op, bijvoorbeeld 'Demo ACR Tasks'
Selecteer scopes voor ACR om toegang te krijgen tot de repository. Voor toegang tot een openbare opslagplaats zoals in deze zelfstudie, schakelt u onder repo de opties repo:status and public_repo in
Notitie
Als u een PAT wilt genereren om toegang te krijgen tot een privéopslagplaats, selecteert u het bereik voor volledige controle van de opslagplaats.
Selecteer de knop Token genereren (u wordt mogelijk gevraagd om uw wachtwoord te bevestigen)
Kopieer en bewaar het gegenereerde token in een beveiligde locatie (u gebruikt dit token bij het definiëren van een taak in de volgende sectie)
De omgeving voorbereiden op de Azure CLI
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie Aan de slag met Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Zie Verifiëren bij Azure met behulp van Azure CLI voor andere aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Zie Extensies gebruiken en beheren met de Azure CLIvoor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
Een taak met meerdere stappen maken
Nu u de stappen hebt voltooid die nodig zijn om ACR-taken in te schakelen voor het lezen van commitstatus en het maken van webhooks in een opslagplaats, kunt u een taak met meerdere stappen maken die het bouwen, uitvoeren en pushen van een container image triggert.
YAML-bestand
U definieert de stappen voor een taak met meerdere stappen in een YAML-bestand. Het eerste voorbeeld van een taak met meerdere stappen in deze zelfstudie is gedefinieerd in het bestand taskmulti.yaml, dat zich bevindt in de hoofdmap van de GitHub-opslagplaats die u hebt gekloond:
version: v1.1.0
steps:
# Build target image
- build: -t {{.Run.Registry}}/hello-world:{{.Run.ID}} -f Dockerfile .
# Run image
- cmd: -t {{.Run.Registry}}/hello-world:{{.Run.ID}}
id: test
detach: true
ports: ["8080:80"]
- cmd: docker stop test
# Push image
- push:
- {{.Run.Registry}}/hello-world:{{.Run.ID}}
Deze taak met meerdere stappen doet het volgende:
- Er wordt een
build-stap uitgevoerd om een image te bouwen van de Dockerfile in de werkdirectory. De image richt zich op het doelregister,Run.Registry, waar de taak wordt uitgevoerd, en is getagd met een unieke run-ID voor ACR-taken. - Een
cmd-stap wordt uitgevoerd om de image in een tijdelijke container uit te voeren. In dit voorbeeld wordt een container met een lange looptijd op de achtergrond gestart en wordt de container-id geretourneerd; vervolgens wordt de container gestopt. In een praktijkscenario kunt u stappen opnemen om de draaiende container te testen om te controleren of deze correct werkt. - In een
push-stap verplaatst u de gemaakte image naar het registry van de uitvoering.
Taakopdracht
Vul eerst deze shell-omgevingsvariabelen met waarden die geschikt zijn voor uw omgeving. Hoewel deze stap strikt genomen niet vereist is, vereenvoudigt u hiermee de uitvoering van meerregelige Azure CLI-opdrachten in deze zelfstudie. Als u deze omgevingsvariabelen niet invult, moet u elke bijbehorende waarde handmatig vervangen wanneer deze wordt weergegeven in de voorbeeldopdrachten.
ACR_NAME=<registry-name> # The name of your Azure container registry
GIT_USER=<github-username> # Your GitHub user account name
GIT_PAT=<personal-access-token> # The PAT you generated in the previous section
Maak de taak nu door de volgende az acr task create-opdracht uit te voeren:
az acr task create \
--registry $ACR_NAME \
--name example1 \
--context https://github.com/$GIT_USER/acr-build-helloworld-node.git#main \
--file taskmulti.yaml \
--git-access-token $GIT_PAT
Deze taak specificeert dat elke keer dat code naar de main branch in de opslagplaats, zoals gespecificeerd door --context, wordt doorgevoerd, ACR Tasks de multi-stap taak uitvoert op basis van de code in die branch. De stappen worden gedefinieerd in het YAML-bestand dat is opgegeven door --file vanuit de hoofdmap van de opslagplaats.
De uitvoer van een geslaagde az acr task create-opdracht is vergelijkbaar met het volgende:
{
"agentConfiguration": {
"cpu": 2
},
"creationDate": "2020-11-20T03:14:31.763887+00:00",
"credentials": null,
"id": "/subscriptions/<Subscription ID>/resourceGroups/myregistry/providers/Microsoft.ContainerRegistry/registries/myregistry/tasks/taskmulti",
"location": "westus",
"name": "example1",
"platform": {
"architecture": "amd64",
"os": "linux",
"variant": null
},
"provisioningState": "Succeeded",
"resourceGroup": "myresourcegroup",
"status": "Enabled",
"step": {
"baseImageDependencies": null,
"contextAccessToken": null,
"contextPath": "https://github.com/gituser/acr-build-helloworld-node.git#main",
"taskFilePath": "taskmulti.yaml",
"type": "FileTask",
"values": [],
"valuesFilePath": null
},
"tags": null,
"timeout": 3600,
"trigger": {
"baseImageTrigger": {
"baseImageTriggerType": "Runtime",
"name": "defaultBaseimageTriggerName",
"status": "Enabled"
},
"sourceTriggers": [
{
"name": "defaultSourceTriggerName",
"sourceRepository": {
"branch": "main",
"repositoryUrl": "https://github.com/gituser/acr-build-helloworld-node.git#main",
"sourceControlAuthProperties": null,
"sourceControlType": "Github"
},
"sourceTriggerEvents": [
"commit"
],
"status": "Enabled"
}
]
},
"type": "Microsoft.ContainerRegistry/registries/tasks"
}
De werkstroom met meerdere stappen testen
Als u de taak met meerdere stappen wilt testen, activeert u deze handmatig door de opdracht az acr task run uit te voeren:
az acr task run --registry $ACR_NAME --name example1
Met de opdracht az acr task run streamt u standaard de logboekuitvoer naar de console wanneer u de opdracht uitvoert. In de uitvoer ziet u de voortgang van het uitvoeren van elke stap van de taak. De onderstaande uitvoer is ingekort om de belangrijkste stappen weer te geven.
Queued a run with ID: cab
Waiting for an agent...
2020/11/20 00:03:31 Downloading source code...
2020/11/20 00:03:33 Finished downloading source code
2020/11/20 00:03:33 Using acb_vol_cfe6bd55-3076-4215-8091-6a81aec3d1b1 as the home volume
2020/11/20 00:03:33 Creating Docker network: acb_default_network, driver: 'bridge'
2020/11/20 00:03:34 Successfully set up Docker network: acb_default_network
2020/11/20 00:03:34 Setting up Docker configuration...
2020/11/20 00:03:34 Successfully set up Docker configuration
2020/11/20 00:03:34 Logging in to registry: myregistry.azurecr.io
2020/11/20 00:03:35 Successfully logged into myregistry.azurecr.io
2020/11/20 00:03:35 Executing step ID: acb_step_0. Working directory: '', Network: 'acb_default_network'
2020/11/20 00:03:35 Scanning for dependencies...
2020/11/20 00:03:36 Successfully scanned dependencies
2020/11/20 00:03:36 Launching container with name: acb_step_0
Sending build context to Docker daemon 24.06kB
[...]
Successfully built f669bfd170af
Successfully tagged myregistry.azurecr.io/hello-world:cf19
2020/11/20 00:03:43 Successfully executed container: acb_step_0
2020/11/20 00:03:43 Executing step ID: acb_step_1. Working directory: '', Network: 'acb_default_network'
2020/11/20 00:03:43 Launching container with name: acb_step_1
279b1cb6e092b64c8517c5506fcb45494cd5a0bd10a6beca3ba97f25c5d940cd
2020/11/20 00:03:44 Successfully executed container: acb_step_1
2020/11/20 00:03:44 Executing step ID: acb_step_2. Working directory: '', Network: 'acb_default_network'
2020/11/20 00:03:44 Pushing image: myregistry.azurecr.io/hello-world:cf19, attempt 1
[...]
2020/11/20 00:03:46 Successfully pushed image: myregistry.azurecr.io/hello-world:cf19
2020/11/20 00:03:46 Step ID: acb_step_0 marked as successful (elapsed time in seconds: 7.425169)
2020/11/20 00:03:46 Populating digests for step ID: acb_step_0...
2020/11/20 00:03:47 Successfully populated digests for step ID: acb_step_0
2020/11/20 00:03:47 Step ID: acb_step_1 marked as successful (elapsed time in seconds: 0.827129)
2020/11/20 00:03:47 Step ID: acb_step_2 marked as successful (elapsed time in seconds: 2.112113)
2020/11/20 00:03:47 The following dependencies were found:
2020/11/20 00:03:47
- image:
registry: myregistry.azurecr.io
repository: hello-world
tag: cf19
digest: sha256:6b981a8ca8596e840228c974c929db05c0727d8630465de536be74104693467a
runtime-dependency:
registry: registry.hub.docker.com
repository: library/node
tag: 15-alpine
digest: sha256:8dafc0968fb4d62834d9b826d85a8feecc69bd72cd51723c62c7db67c6dec6fa
git:
git-head-revision: 1a3065388a0238e52865db1c8f3e97492a43444c
Run ID: cab was successful after 18s
Een build starten met een commit
Nu u de taak hebt getest door deze handmatig uit te voeren, gaat u deze automatisch activeren met een wijziging in de broncode.
Controleer eerst of u zich bevindt in de map waarin de lokale kloon van de opslagplaats staat:
cd acr-build-helloworld-node
Voer vervolgens de volgende opdrachten uit om een nieuw bestand te maken, door te voeren en pushen naar uw fork van de opslagplaats op GitHub:
echo "Hello World!" > hello.txt
git add hello.txt
git commit -m "Testing ACR Tasks"
git push origin main
U wordt mogelijk gevraagd om uw GitHub-referenties op te geven wanneer u de opdracht git push uitvoert. Geef uw GitHub-gebruikersnaam op en voer het persoonlijke toegangstoken (PAT) in dat u eerder hebt gemaakt voor het wachtwoord.
Username for 'https://github.com': <github-username>
Password for 'https://githubuser@github.com': <personal-access-token>
Zodra u een commit naar uw opslagplaats hebt gepusht, wordt de webhook die is gemaakt door ACR-taken geactiveerd en wordt de taak in Azure Container Registry gestart. Geef de logboeken weer voor de taak die momenteel wordt uitgevoerd om de voortgang van de build te verifiëren en controleren:
az acr task logs --registry $ACR_NAME
De uitvoer is vergelijkbaar met de volgende, waarin de op dit moment uitgevoerde (of de laatst uitgevoerde) taak wordt getoond:
Showing logs of the last created run.
Run ID: cad
[...]
Run ID: cad was successful after 37s
Builds weergeven
Voor een overzicht van de taken die ACR Tasks heeft voltooid voor het register, voert u de opdracht az acr task-list-runs uit:
az acr task list-runs --registry $ACR_NAME --output table
De uitvoer van de opdracht ziet er ongeveer als volgt uit. De runs die ACR Tasks heeft uitgevoerd, worden weergegeven. 'Git Commit' wordt weergegeven in de kolom TRIGGER voor de meest recente taak:
RUN ID TASK PLATFORM STATUS TRIGGER STARTED DURATION
-------- -------------- ---------- --------- --------- -------------------- ----------
cad example1 linux Succeeded Commit 2020-11-20T00:22:15Z 00:00:35
cac taskhelloworld linux Succeeded Commit 2020-11-20T00:22:15Z 00:00:22
cab example1 linux Succeeded Manual 2020-11-20T00:18:36Z 00:00:47
Een taak met meerdere stappen en registers maken
ACR-taken hebben standaard toestemming om afbeeldingen te pushen naar of te pullen van het register waar de taak wordt uitgevoerd. U kunt ook een taak met meerdere stappen uitvoeren op een of meer andere registers dan het uitvoeringsregister. U moet bijvoorbeeld afbeeldingen bouwen in één register en afbeeldingen met andere tags opslaan in een tweede register dat wordt benaderd door een productiesysteem. Dit voorbeeld laat zien hoe u een dergelijke taak maakt en referenties voor een ander register opgeeft.
Als u nog geen tweede register hebt, maakt u er een voor dit voorbeeld. Als u een register nodig hebt, zie dan de vorige zelfstudie of Snelstartgids: Een containerregister maken met de Azure CLI.
Als u de taak wilt maken, hebt u de naam van de aanmeldingsserver van het register nodig in de vorm mycontainerregistrydate.azurecr.io (allemaal kleine letters). In dit voorbeeld gebruikt u het tweede register om images op te slaan die gelabeld zijn met de bouwdatum.
YAML-bestand
Het tweede voorbeeld van een taak met meerdere stappen in deze zelfstudie is gedefinieerd in het bestand taskmulti-multiregistry.yaml, dat zich bevindt in de hoofdmap van de GitHub-opslagplaats die u hebt gekloond:
version: v1.1.0
steps:
# Build target images
- build: -t {{.Run.Registry}}/hello-world:{{.Run.ID}} -f Dockerfile .
- build: -t {{.Values.regDate}}/hello-world:{{.Run.Date}} -f Dockerfile .
# Run image
- cmd: -t {{.Run.Registry}}/hello-world:{{.Run.ID}}
id: test
detach: true
ports: ["8080:80"]
- cmd: docker stop test
# Push images
- push:
- {{.Run.Registry}}/hello-world:{{.Run.ID}}
- {{.Values.regDate}}/hello-world:{{.Run.Date}}
Deze taak met meerdere stappen doet het volgende:
- Voert twee
buildstappen uit om afbeeldingen te bouwen vanuit de Dockerfile in de werkmap.- Het eerste doelwit is
Run.Registry, het register waar de taak wordt uitgevoerd, en is getagd met de run-id voor ACR-taken. - Het tweede doel is het register dat is geïdentificeerd door de waarde van
regDate, die u instelt bij het maken van de taak (of opgeeft via een externvalues.yaml-bestand dat aanaz acr task createwordt doorgegeven). Deze afbeelding is getagd met de uitvoerdatum.
- Het eerste doelwit is
- Voert een
cmd-stap uit om een van de gemaakte containers te laten draaien. In dit voorbeeld wordt een container met een lange looptijd op de achtergrond gestart en wordt de container-id geretourneerd; vervolgens wordt de container gestopt. In een praktijksituatie kunt u een actieve container testen om te controleren of deze correct functioneert. - Met een
push-stap worden de afbeeldingen die zijn gemaakt gepusht: de eerste naar het uitvoeringsregister, de tweede naar het register dat is opgegeven metregDate.
Taakopdracht
Maak de taak met behulp van de eerder gedefinieerde shell-omgevingsvariabelen door de volgende az acr task create-opdracht uit te voeren. Vervang mycontainerregistrydate door de naam van uw register.
az acr task create \
--registry $ACR_NAME \
--name example2 \
--context https://github.com/$GIT_USER/acr-build-helloworld-node.git#main \
--file taskmulti-multiregistry.yaml \
--git-access-token $GIT_PAT \
--set regDate=mycontainerregistrydate.azurecr.io
Taakreferentie toevoegen
Om afbeeldingen naar het register te pushen dat wordt aangeduid met de waarde van regDate, gebruikt u de opdracht az acr task credential add om inloggegevens voor dat register aan de taak toe te voegen.
Voor dit voorbeeld raden wij aan een service-principal te maken met machtigingen om afbeeldingen naar het register te pushen. Als u pushmachtigingen wilt verlenen, wijst u de Container Registry Repository Writer rol toe voor registers die zijn ingeschakeld voor Op kenmerken gebaseerd toegangsbeheer (ABAC) van Microsoft Entra voor het beheren van machtigingen voor microsoft Entra-opslagplaatsen. Wijs anders voor niet-ABAC-registers de AcrPush rol toe.
Gebruik het volgende script om de service-principal te maken:
#!/bin/bash
# This script requires Azure CLI version 2.25.0 or later. Check version with `az --version`.
# Modify for your environment.
# ACR_NAME: The name of your Azure Container Registry
# SERVICE_PRINCIPAL_NAME: Must be unique within your AD tenant
ACR_NAME=$containerRegistry
SERVICE_PRINCIPAL_NAME=$servicePrincipal
# Obtain the full registry ID
ACR_REGISTRY_ID=$(az acr show --name $ACR_NAME --query "id" --output tsv)
# echo $registryId
# Create the service principal with rights scoped to the registry.
# Default permissions are for docker pull access. Modify the '--role'
# argument value as desired:
# acrpull: pull only
# acrpush: push and pull
# owner: push, pull, and assign roles
PASSWORD=$(az ad sp create-for-rbac --name $SERVICE_PRINCIPAL_NAME --scopes $ACR_REGISTRY_ID --role acrpull --query "password" --output tsv)
USER_NAME=$(az ad sp list --display-name $SERVICE_PRINCIPAL_NAME --query "[].appId" --output tsv)
# Output the service principal's credentials; use these in your services and
# applications to authenticate to the container registry.
echo "Service principal ID: $USER_NAME"
echo "Service principal password: $PASSWORD"
Geef de toepassings-id en het wachtwoord van de service-principal op in het volgende az acr task credential add-commando. Zorg ervoor dat u de naam van de aanmeldingsserver mycontainerregistrydate bijwerkt met de naam van het tweede register:
az acr task credential add --name example2 \
--registry $ACR_NAME \
--login-server mycontainerregistrydate.azurecr.io \
--username <service-principal-application-id> \
--password <service-principal-password>
De CLI retourneert de naam van de aanmeldserver van het register die u heeft toegevoegd.
De werkstroom met meerdere stappen testen
Als u de taak met meerdere stappen wilt testen, activeert u deze handmatig door de opdracht az acr task run uit te voeren, net zoals in het vorige voorbeeld. Als u de taak met een doorvoer naar de Git-opslagplaats wilt activeren, raadpleegt u de sectie Een build activeren met een doorvoer.
az acr task run --registry $ACR_NAME --name example2
Met de opdracht az acr task run streamt u standaard de logboekuitvoer naar de console wanneer u de opdracht uitvoert. In de uitvoer ziet u, net als voorheen, de voortgang van het uitvoeren van elke stap van de taak. De uitvoer is ingekort om de belangrijkste stappen weer te geven.
Uitvoer:
Queued a run with ID: cf1g
Waiting for an agent...
2020/11/20 04:33:39 Downloading source code...
2020/11/20 04:33:41 Finished downloading source code
2020/11/20 04:33:42 Using acb_vol_4569b017-29fe-42bd-83b2-25c45a8ac807 as the home volume
2020/11/20 04:33:42 Creating Docker network: acb_default_network, driver: 'bridge'
2020/11/20 04:33:43 Successfully set up Docker network: acb_default_network
2020/11/20 04:33:43 Setting up Docker configuration...
2020/11/20 04:33:44 Successfully set up Docker configuration
2020/11/20 04:33:44 Logging in to registry: mycontainerregistry.azurecr.io
2020/11/20 04:33:45 Successfully logged into mycontainerregistry.azurecr.io
2020/11/20 04:33:45 Logging in to registry: mycontainerregistrydate.azurecr.io
2020/11/20 04:33:47 Successfully logged into mycontainerregistrydate.azurecr.io
2020/11/20 04:33:47 Executing step ID: acb_step_0. Working directory: '', Network: 'acb_default_network'
2020/11/20 04:33:47 Scanning for dependencies...
2020/11/20 04:33:47 Successfully scanned dependencies
2020/11/20 04:33:47 Launching container with name: acb_step_0
Sending build context to Docker daemon 25.09kB
[...]
Successfully tagged mycontainerregistry.azurecr.io/hello-world:cf1g
2020/11/20 04:33:55 Successfully executed container: acb_step_0
2020/11/20 04:33:55 Executing step ID: acb_step_1. Working directory: '', Network: 'acb_default_network'
2020/11/20 04:33:55 Scanning for dependencies...
2020/11/20 04:33:56 Successfully scanned dependencies
2020/11/20 04:33:56 Launching container with name: acb_step_1
Sending build context to Docker daemon 25.09kB
[...]
Successfully tagged mycontainerregistrydate.azurecr.io/hello-world:20190503-043342z
2020/11/20 04:33:57 Successfully executed container: acb_step_1
2020/11/20 04:33:57 Executing step ID: acb_step_2. Working directory: '', Network: 'acb_default_network'
2020/11/20 04:33:57 Launching container with name: acb_step_2
721437ff674051b6be63cbcd2fa8eb085eacbf38d7d632f1a079320133182101
2020/11/20 04:33:58 Successfully executed container: acb_step_2
2020/11/20 04:33:58 Executing step ID: acb_step_3. Working directory: '', Network: 'acb_default_network'
2020/11/20 04:33:58 Launching container with name: acb_step_3
test
2020/11/20 04:34:09 Successfully executed container: acb_step_3
2020/11/20 04:34:09 Executing step ID: acb_step_4. Working directory: '', Network: 'acb_default_network'
2020/11/20 04:34:09 Pushing image: mycontainerregistry.azurecr.io/hello-world:cf1g, attempt 1
The push refers to repository [mycontainerregistry.azurecr.io/hello-world]
[...]
2020/11/20 04:34:12 Successfully pushed image: mycontainerregistry.azurecr.io/hello-world:cf1g
2020/11/20 04:34:12 Pushing image: mycontainerregistrydate.azurecr.io/hello-world:20190503-043342z, attempt 1
The push refers to repository [mycontainerregistrydate.azurecr.io/hello-world]
[...]
2020/11/20 04:34:19 Successfully pushed image: mycontainerregistrydate.azurecr.io/hello-world:20190503-043342z
2020/11/20 04:34:19 Step ID: acb_step_0 marked as successful (elapsed time in seconds: 8.125744)
2020/11/20 04:34:19 Populating digests for step ID: acb_step_0...
2020/11/20 04:34:21 Successfully populated digests for step ID: acb_step_0
2020/11/20 04:34:21 Step ID: acb_step_1 marked as successful (elapsed time in seconds: 2.009281)
2020/11/20 04:34:21 Populating digests for step ID: acb_step_1...
2020/11/20 04:34:23 Successfully populated digests for step ID: acb_step_1
2020/11/20 04:34:23 Step ID: acb_step_2 marked as successful (elapsed time in seconds: 0.795440)
2020/11/20 04:34:23 Step ID: acb_step_3 marked as successful (elapsed time in seconds: 11.446775)
2020/11/20 04:34:23 Step ID: acb_step_4 marked as successful (elapsed time in seconds: 9.734973)
2020/11/20 04:34:23 The following dependencies were found:
2020/11/20 04:34:23
- image:
registry: mycontainerregistry.azurecr.io
repository: hello-world
tag: cf1g
digest: sha256:75354e9edb995e8661438bad9913deed87a185fddd0193811f916d684b71a5d2
runtime-dependency:
registry: registry.hub.docker.com
repository: library/node
tag: 15-alpine
digest: sha256:8dafc0968fb4d62834d9b826d85a8feecc69bd72cd51723c62c7db67c6dec6fa
git:
git-head-revision: 9d9023473c46a5e2c315681b11eb4552ef0faccc
- image:
registry: mycontainerregistrydate.azurecr.io
repository: hello-world
tag: 20190503-043342z
digest: sha256:75354e9edb995e8661438bad9913deed87a185fddd0193811f916d684b71a5d2
runtime-dependency:
registry: registry.hub.docker.com
repository: library/node
tag: 15-alpine
digest: sha256:8dafc0968fb4d62834d9b826d85a8feecc69bd72cd51723c62c7db67c6dec6fa
git:
git-head-revision: 9d9023473c46a5e2c315681b11eb4552ef0faccc
Run ID: cf1g was successful after 46s
Volgende stappen
In deze zelfstudie hebt u geleerd hoe u taken met meerdere stappen en containers maakt die automatisch worden geactiveerd wanneer u broncode naar een Git-opslagplaats doorvoert. Zie de YAML-referentie voor ACR-taken voor geavanceerde functies van taken met meerdere stappen, waaronder parallelle en afhankelijke uitvoering van stappen. Ga door naar de volgende tutorial om te leren hoe je taken kunt maken die builds activeren wanneer de basisafbeelding van een container wordt bijgewerkt.