Snelstartgids: een container exemplaar implementeren in azure met behulp van Azure CLIQuickstart: Deploy a container instance in Azure using the Azure CLI

Gebruik Azure Container Instances om serverloze docker-containers in azure uit te voeren met eenvoud en snelheid.Use Azure Container Instances to run serverless Docker containers in Azure with simplicity and speed. Implementeer een toepassing op een container exemplaar op aanvraag wanneer u geen volledig container Orchestration-platform zoals Azure Kubernetes service nodig hebt.Deploy an application to a container instance on-demand when you don't need a full container orchestration platform like Azure Kubernetes Service.

In deze Quick Start gebruikt u de Azure CLI voor het implementeren van een geïsoleerde docker-container en maakt u de toepassing beschikbaar met een Fully Qualified Domain Name (FQDN).In this quickstart, you use the Azure CLI to deploy an isolated Docker container and make its application available with a fully qualified domain name (FQDN). Een paar seconden nadat u één implementatie opdracht hebt uitgevoerd, kunt u bladeren naar de toepassing die in de container wordt uitgevoerd:A few seconds after you execute a single deployment command, you can browse to the application running in the container:

Een app weer geven die is geïmplementeerd in Azure Container Instances in browser

Als u nog geen abonnement op Azure hebt, maak dan een gratis account aan voordat u begint.If you don't have an Azure subscription, create a free account before you begin.

Azure Cloud Shell gebruikenUse Azure Cloud Shell

Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. U kunt bash of Power shell gebruiken met Cloud Shell om met Azure-Services te werken.You can use either Bash or PowerShell with Cloud Shell to work with Azure services. U kunt de Cloud Shell vooraf geïnstalleerde opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.You can use the Cloud Shell preinstalled commands to run the code in this article without having to install anything on your local environment.

Azure Cloud Shell starten:To start Azure Cloud Shell:

OptieOption Voor beeld/koppelingExample/Link
Selecteer Nu proberen in de rechterbovenhoek van een codeblok.Select Try It in the upper-right corner of a code block. Als u opnieuw proberen selecteert, wordt de code niet automatisch gekopieerd naar Cloud shell.Selecting Try It doesn't automatically copy the code to Cloud Shell. Voor beeld van uitproberen voor Azure Cloud Shell
Ga naar https://shell.azure.comof selecteer de knop start Cloud shell om Cloud shell in uw browser te openen.Go to https://shell.azure.com, or select the Launch Cloud Shell button to open Cloud Shell in your browser. Cloud Shell starten in een nieuw vensterLaunch Cloud Shell in a new window
Selecteer de knop Cloud shell in de rechter menu balk van het Azure Portal.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Knop Cloud Shell in de Azure Portal

Als u de code in dit artikel in Azure Cloud Shell wilt uitvoeren:To run the code in this article in Azure Cloud Shell:

  1. Start Cloud Shell.Start Cloud Shell.

  2. Selecteer de knop kopiëren in een code blok om de code te kopiëren.Select the Copy button on a code block to copy the code.

  3. Plak de code in de Cloud Shell-sessie door Ctrl+SHIFT+v in Windows en Linux te selecteren of door cmd+SHIFT+v te selecteren op macOS.Paste the code into the Cloud Shell session by selecting Ctrl+Shift+V on Windows and Linux or by selecting Cmd+Shift+V on macOS.

  4. Selecteer Enter om de code uit te voeren.Select Enter to run the code.

U kunt de Azure Cloud Shell of een lokale installatie van de Azure CLI gebruiken om deze Quick Start uit te voeren.You can use the Azure Cloud Shell or a local installation of the Azure CLI to complete this quickstart. Als u het lokaal wilt gebruiken, wordt versie 2.0.55 of hoger aanbevolen.If you'd like to use it locally, version 2.0.55 or later is recommended. Voer az --version uit om de versie te bekijken.Run az --version to find the version. Zie Azure CLI installeren als u de CLI wilt installeren of een upgrade wilt uitvoeren.If you need to install or upgrade, see Install Azure CLI.

Een resourcegroep makenCreate a resource group

Azure Container Instances moeten, zoals alle Azure-resources, worden geïmplementeerd in een resourcegroep.Azure container instances, like all Azure resources, must be deployed into a resource group. Met resourcegroepen kunt u gerelateerde Azure-resources organiseren en beheren.Resource groups allow you to organize and manage related Azure resources.

Maak eerst een resource groep met de naam myResourceGroup in de oostelijke locatie met de volgende opdracht AZ Group Create :First, create a resource group named myResourceGroup in the eastus location with the following az group create command:

az group create --name myResourceGroup --location eastus

Een container makenCreate a container

Nu u een resourcegroep hebt, kunt u een container in Azure uitvoeren.Now that you have a resource group, you can run a container in Azure. Als u een container exemplaar met de Azure CLI wilt maken, geeft u de naam van de resource groep, de naam van het container exemplaar en de docker-container installatie kopie op in de opdracht AZ container Create .To create a container instance with the Azure CLI, provide a resource group name, container instance name, and Docker container image to the az container create command. In deze Quick Start gebruikt u de open bare installatie kopie van mcr.microsoft.com/azuredocs/aci-helloworld.In this quickstart, you use the public mcr.microsoft.com/azuredocs/aci-helloworld image. Deze installatiekopie bevat een kleine web-app geschreven in Node.js die een statische HTML-pagina levert.This image packages a small web app written in Node.js that serves a static HTML page.

Als u uw containers beschikbaar wilt maken op internet, moet u een of meer poorten om te openen of een DNS-naamlabel opgeven, of beide.You can expose your containers to the internet by specifying one or more ports to open, a DNS name label, or both. In deze quickstart implementeert u een container met een DNS-naamlabel zodat de web-app openbaar bereikbaar is.In this quickstart, you deploy a container with a DNS name label so that the web app is publicly reachable.

Voer een opdracht uit die vergelijkbaar is met de volgende om een container exemplaar te starten.Execute a command similar to the following to start a container instance. Stel een --dns-name-label waarde in die uniek is binnen de Azure-regio waar u het exemplaar maakt.Set a --dns-name-label value that's unique within the Azure region where you create the instance. Als u een foutbericht 'DNS-naamlabel niet beschikbaar' ontvangt, probeert u een ander DNS-naamlabel.If you receive a "DNS name label not available" error message, try a different DNS name label.

az container create --resource-group myResourceGroup --name mycontainer --image mcr.microsoft.com/azuredocs/aci-helloworld --dns-name-label aci-demo --ports 80

Binnen enkele seconden krijgt u een reactie van de Azure-CLI die aangeeft dat de implementatie is voltooid.Within a few seconds, you should get a response from the Azure CLI indicating that the deployment has completed. Controleer de status met de opdracht AZ container show :Check its status with the az container show command:

az container show --resource-group myResourceGroup --name mycontainer --query "{FQDN:ipAddress.fqdn,ProvisioningState:provisioningState}" --out table

Wanneer u de opdracht uitvoert, worden de FQDN (Fully Qualified Domain Name) en de inrichtingsstatus van de container weergegeven.When you run the command, the container's fully qualified domain name (FQDN) and its provisioning state are displayed.

$ az container show --resource-group myResourceGroup --name mycontainer --query "{FQDN:ipAddress.fqdn,ProvisioningState:provisioningState}" --out table
FQDN                               ProvisioningState
---------------------------------  -------------------
aci-demo.eastus.azurecontainer.io  Succeeded

Als de ProvisioningState van de container is voltooid, gaat u naar de FQDN in uw browser.If the container's ProvisioningState is Succeeded, go to its FQDN in your browser. U moet nu een webpagina zien die lijkt op de volgende.If you see a web page similar to the following, congratulations! U hebt een toepassing geïmplementeerd die wordt uitgevoerd in een Docker-container voor Azure.You've successfully deployed an application running in a Docker container to Azure.

Een app weer geven die is geïmplementeerd in Azure Container Instances in browser

Als de toepassing niet meteen wordt weergegeven, moet u mogelijk een paar seconden wachten terwijl DNS wordt doorgegeven. Probeer vervolgens de browser te vernieuwen.If at first the application isn't displayed, you might need to wait a few seconds while DNS propagates, then try refreshing your browser.

De containerlogboeken ophalenPull the container logs

Wanneer u problemen moet oplossen voor een container of de toepassing die daarmee wordt uitgevoerd, of als u alleen de uitvoer wilt zien, kunt u eerst de logboeken van de containerinstantie bekijken.When you need to troubleshoot a container or the application it runs (or just see its output), start by viewing the container instance's logs.

Haal de logboeken van de container instantie op met de opdracht AZ container logs :Pull the container instance logs with the az container logs command:

az container logs --resource-group myResourceGroup --name mycontainer

De uitvoer geeft de logboeken voor de container weer, evenals de HTTP GET-aanvragen die worden gegenereerd wanneer u de toepassing in uw browser weergeeft.The output displays the logs for the container, and should show the HTTP GET requests generated when you viewed the application in your browser.

$ az container logs --resource-group myResourceGroup --name mycontainer
listening on port 80
::ffff:10.240.255.55 - - [21/Mar/2019:17:43:53 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [21/Mar/2019:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [21/Mar/2019:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"

Uitvoerstromen koppelenAttach output streams

Behalve het bekijken van de logboeken kunt u ook uw lokale standaarduitvoer- en standaardgegevensstromen met fouten koppelen aan die van de container.In addition to viewing the logs, you can attach your local standard out and standard error streams to that of the container.

Voer eerst de opdracht AZ container attach uit om uw lokale console te koppelen aan de uitvoer stromen van de container:First, execute the az container attach command to attach your local console to the container's output streams:

az container attach --resource-group myResourceGroup --name mycontainer

Vernieuw de browser na het koppelen een paar keer om wat extra uitvoer te genereren.Once attached, refresh your browser a few times to generate some additional output. Wanneer u klaar bent, ontkoppelt u ten slotte de console met Control+C.When you're done, detach your console with Control+C. De uitvoer ziet er als volgt uit:You should see output similar to the following:

$ az container attach --resource-group myResourceGroup --name mycontainer
Container 'mycontainer' is in state 'Running'...
(count: 1) (last timestamp: 2019-03-21 17:27:20+00:00) pulling image "mcr.microsoft.com/azuredocs/aci-helloworld"
(count: 1) (last timestamp: 2019-03-21 17:27:24+00:00) Successfully pulled image "mcr.microsoft.com/azuredocs/aci-helloworld"
(count: 1) (last timestamp: 2019-03-21 17:27:27+00:00) Created container
(count: 1) (last timestamp: 2019-03-21 17:27:27+00:00) Started container

Start streaming logs:
listening on port 80

::ffff:10.240.255.55 - - [21/Mar/2019:17:43:53 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [21/Mar/2019:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [21/Mar/2019:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [21/Mar/2019:17:47:01 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.56 - - [21/Mar/2019:17:47:12 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"

Resources opschonenClean up resources

Wanneer u klaar bent met de container, verwijdert u deze met behulp van de opdracht AZ container delete :When you're done with the container, remove it using the az container delete command:

az container delete --resource-group myResourceGroup --name mycontainer

Om te controleren of de container is verwijderd, voert u de opdracht az container list uit:To verify that the container has been deleted, execute the az container list command:

az container list --resource-group myResourceGroup --output table

De container mycontainer mag dan niet worden weergegeven in de uitvoer van de opdracht.The mycontainer container should not appear in the command's output. Als u geen andere containers in de resourcegroep hebt, wordt er geen uitvoer weergegeven.If you have no other containers in the resource group, no output is displayed.

Als u klaar bent met de resource groep myResourceGroup en alle resources die deze bevat, verwijdert u deze met de opdracht AZ Group delete :If you're done with the myResourceGroup resource group and all the resources it contains, delete it with the az group delete command:

az group delete --name myResourceGroup

Volgende stappenNext steps

In deze Quick Start hebt u een Azure-container exemplaar gemaakt met behulp van een open bare micro soft-installatie kopie.In this quickstart, you created an Azure container instance by using a public Microsoft image. Als u zelf een containerinstallatiekopie wilt bouwen en deze wilt implementeren met behulp van een privé Azure Container-register, gaat u verder met de zelfstudie voor Azure Container Instances.If you'd like to build a container image and deploy it from a private Azure container registry, continue to the Azure Container Instances tutorial.

Zie de Snelstartgids voor Azure Kubernetes service (AKS) als u opties wilt uitproberen voor het uitvoeren van containers in een Orchestration-systeem op Azure.To try out options for running containers in an orchestration system on Azure, see the Azure Kubernetes Service (AKS) quickstarts.