Oefening: Een containerinstallatiekopieën bouwen en uitvoeren met behulp van Azure Container Registry Tasks
In deze oefening gebruikt u ACR Tasks om de volgende acties uit te voeren:
- Een ACR (Azure Container Registry) maken
- Een installatiekopie bouwen en pushen vanaf een Dockerfile
- De resultaten controleren
- De installatiekopieën uitvoeren in de ACR
Vereisten
- Een Azure-account met een actief abonnement. Als u nog geen abonnement hebt, kunt u zich registreren voor een gratis proefversie op https://azure.com/free
Meld u aan bij Azure en start Cloud Shell
Meld u aan bij Azure Portal en open Cloud Shell.
Wanneer de shell wordt geopend, selecteert u de Bash-omgeving .
Een Azure Container Registry maken
Maak een resourcegroep voor het register. Vervang
<myLocation>
in de volgende opdracht door een locatie bij u in de buurt.az group create --name az204-acr-rg --location <myLocation>
Maak een basiscontainerregister. De registernaam moet uniek zijn binnen Azure en mag 5 tot 50 alfanumerieke tekens bevatten. Vervang
<myContainerRegistry>
in de volgende opdracht door een unieke waarde.az acr create --resource-group az204-acr-rg \ --name <myContainerRegistry> --sku Basic
Notitie
Met de opdracht maakt u een basisregister , een optie die is geoptimaliseerd voor kosten voor ontwikkelaars die meer te weten komen over Azure Container Registry.
Een installatiekopie bouwen en pushen vanaf een Dockerfile
Gebruik nu Azure Container Registry om een installatiekopieën te bouwen en te pushen op basis van een lokaal Dockerfile.
Maak of navigeer naar een lokale map en gebruik vervolgens de volgende opdracht om het Dockerfile te maken. Het Dockerfile bevat één regel die verwijst naar de
hello-world
installatiekopie die wordt gehost in het Microsoft Container Registry.echo FROM mcr.microsoft.com/hello-world > Dockerfile
Voer de
az acr build
opdracht uit, waarmee de installatiekopie wordt gemaakt en nadat de installatiekopie is gemaakt, deze naar het register pusht. Vervang<myContainerRegistry>
door de naam die u eerder hebt gebruikt.az acr build --image sample/hello-world:v1 \ --registry <myContainerRegistry> \ --file Dockerfile .
Hieronder volgt een ingekort voorbeeld van de uitvoer van de vorige opdracht met de laatste regels met de uiteindelijke resultaten. U kunt in het
repository
veld zien dat desample/hello-word
afbeelding wordt weergegeven.- image: registry: <myContainerRegistry>.azurecr.io repository: sample/hello-world tag: v1 digest: sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a runtime-dependency: registry: mcr.microsoft.com repository: hello-world tag: latest digest: sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a git: {} Run ID: cf1 was successful after 11s
De resultaten controleren
Gebruik de
az acr repository list
opdracht om de opslagplaatsen in uw register weer te geven. Vervang<myContainerRegistry>
door de naam die u eerder hebt gebruikt.az acr repository list --name <myContainerRegistry> --output table
Uitvoer:
Result ---------------- sample/hello-world
Gebruik de
az acr repository show-tags
opdracht om de tags in de voorbeeld-/hello-world-opslagplaats weer te geven. Vervang<myContainerRegistry>
door de naam die u eerder hebt gebruikt.az acr repository show-tags --name <myContainerRegistry> \ --repository sample/hello-world --output table
Uitvoer:
Result -------- v1
De installatiekopieën uitvoeren in de ACR
Voer de
sample/hello-world:v1
containerinstallatiekopieën uit vanuit uw containerregister met behulp van deaz acr run
opdracht. In het volgende voorbeeld wordt het$Registry
register opgegeven waar u de opdracht uitvoert. Vervang<myContainerRegistry>
door de naam die u eerder hebt gebruikt.az acr run --registry <myContainerRegistry> \ --cmd '$Registry/sample/hello-world:v1' /dev/null
De
cmd
parameter in dit voorbeeld voert de container uit in de standaardconfiguratie, maarcmd
ondersteunt anderedocker run
parameters of zelfs anderedocker
opdrachten.De volgende voorbeelduitvoer wordt ingekort:
Packing source code into tar to upload... Uploading archived source code from '/tmp/run_archive_ebf74da7fcb04683867b129e2ccad5e1.tar.gz'... Sending context (1.855 KiB) to registry: mycontainerre... Queued a run with ID: cab Waiting for an agent... 2019/03/19 19:01:53 Using acb_vol_60e9a538-b466-475f-9565-80c5b93eaa15 as the home volume 2019/03/19 19:01:53 Creating Docker network: acb_default_network, driver: 'bridge' 2019/03/19 19:01:53 Successfully set up Docker network: acb_default_network 2019/03/19 19:01:53 Setting up Docker configuration... 2019/03/19 19:01:54 Successfully set up Docker configuration 2019/03/19 19:01:54 Logging in to registry: mycontainerregistry008.azurecr.io 2019/03/19 19:01:55 Successfully logged into mycontainerregistry008.azurecr.io 2019/03/19 19:01:55 Executing step ID: acb_step_0. Working directory: '', Network: 'acb_default_network' 2019/03/19 19:01:55 Launching container with name: acb_step_0 Hello from Docker! This message shows that your installation appears to be working correctly. 2019/03/19 19:01:56 Successfully executed container: acb_step_0 2019/03/19 19:01:56 Step ID: acb_step_0 marked as successful (elapsed time in seconds: 0.843801) Run ID: cab was successful after 6s
Resources opschonen
Wanneer u deze niet meer nodig hebt, kunt u de az group delete
opdracht gebruiken om de resourcegroep, het containerregister en de containerinstallatiekopieën die daar zijn opgeslagen, te verwijderen.
az group delete --name az204-acr-rg --no-wait