Quickstart: Een containerinstantie implementeren in Azure met behulp van de Docker CLI
Gebruik Azure Container Instances om snel en eenvoudig serverloze Docker-containers uit te voeren in Azure. Implementeer op aanvraag naar een containerinstantie wanneer u cloud-apps ontwikkelt en u naadloos wilt kunnen overschakelen van lokaal ontwikkelen naar cloudimplementatie.
In deze quickstart gebruikt u opdrachten van de ingebouwde Docker CLI voor het implementeren van een Docker-container, om daarna de bijbehorende toepassing beschikbaar te maken in Azure Container Instances. Deze mogelijkheid wordt ingeschakeld door integratie tussen Docker en Azure. Een paar seconden na het uitvoeren van de opdracht docker run
kunt u browsen naar de toepassing die wordt uitgevoerd in de container:
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Voor deze quickstart hebt u Docker Desktop versie 2.3.0.5 of hoger nodig. Deze versie is beschikbaar voor Windows of macOS. U kunt ook de Docker ACI Integration CLI voor Linux installeren.
Belangrijk
Niet alle functies van Azure Container Instances worden ondersteund. Geef feedback over de integratie van Docker en Azure door een probleem aan te maken in de GitHub-opslagplaats aci-integration-beta.
Azure-context maken
Als u Docker-opdrachten wilt gebruiken voor het uitvoeren van containers in Azure Container Instances, meldt u zich eerst aan bij Azure:
docker login azure --tenant-id "[tenant ID]"
Blader naar de eigenschappen van Microsoft Entra ID om uw tenant-id te vinden.
Voer uw Azure-referenties in of selecteer deze wanneer dit wordt gevraagd.
Maak een ACI-context door docker context create aci
uit te voeren. Deze context koppelt Docker aan een Azure-abonnement en een resourcegroep, zodat u containerinstanties kunt maken en beheren. Stel dat u een context wilt maken met de naam myacicontext:
docker context create aci myacicontext
Wanneer u hierom wordt gevraagd, selecteert u de id van uw Azure-abonnement en selecteert u een bestaande resourcegroep of maakt u een nieuwe. Als u een nieuwe resourcegroep maakt, krijgt deze een door het systeem gegenereerde naam. Azure Container Instances, zoals alle Azure-resources, moeten worden geïmplementeerd in een resourcegroep. Met resourcegroepen kunt u gerelateerde Azure-resources ordenen en beheren.
Voer docker context ls
uit om te bevestigen dat u de ACI-context hebt toegevoegd aan uw Docker-contexten:
docker context ls
Een container maken
Nadat u een Docker-context hebt gemaakt, kunt u een container maken in Azure. In deze quickstart gebruikt u de openbare installatiekopie mcr.microsoft.com/azuredocs/aci-helloworld
. Deze installatiekopie bevat een kleine web-app geschreven in Node.js die een statische HTML-pagina levert.
Ga eerst naar de ACI-context. Alle volgende Docker-opdrachten worden uitgevoerd in deze context.
docker context use myacicontext
Voer de volgende docker run
-opdracht uit om de Azure-containerinstantie te maken met poort 80 toegankelijk op internet:
docker run -p 80:80 mcr.microsoft.com/azuredocs/aci-helloworld
Voorbeeld van uitvoer bij een geslaagde implementatie:
[+] Running 2/2
⠿ hungry-kirch Created 5.1s
⠿ single--container--aci Done 11.3s
hungry-kirch
Voer docker ps
uit om meer informatie te krijgen over de container die wordt uitgevoerd, zoals het openbare IP-adres:
docker ps
Voorbeeld van uitvoer met een openbaar IP-adres, in dit geval 52.230.225.232:
CONTAINER ID IMAGE COMMAND STATUS PORTS
hungry-kirch mcr.microsoft.com/azuredocs/aci-helloworld Running 52.230.225.232:80->80/tcp
Ga nu naar het IP-adres in uw browser. U moet nu een webpagina zien die lijkt op de volgende. U hebt een toepassing geïmplementeerd die wordt uitgevoerd in een Docker-container voor Azure.
De containerlogboeken ophalen
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.
Voer bijvoorbeeld de docker logs
opdracht uit om de logboeken van de container hungry-kirch te bekijken in de ACI-context:
docker logs hungry-kirch
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.
listening on port 80
::ffff:10.240.255.55 - - [07/Jul/2020: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 - - [07/Jul/2020: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 - - [07/Jul/2020: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"
Resources opschonen
Wanneer u klaar bent met de container, voert u docker rm
uit om deze te verwijderen. Met deze opdracht wordt de Azure-containerinstantie gestopt en verwijderd.
docker rm hungry-kirch
Volgende stappen
In deze quickstart hebt u een Azure-containerinstantie van een openbare installatiekopie gemaakt door gebruik te maken van de integratie tussen Docker en Azure. Meer informatie over integratiescenario's vindt u in de documentatie van Docker.
U kunt ook de Docker-extensie voor Visual Studio Code gebruiken om te werken met een geïntegreerde ervaring voor het ontwikkelen, uitvoeren en beheren van containers, installatiekopieën en contexten.
Als u de Azure-hulpprogramma's wilt gebruiken om containerinstanties te maken en beheren, raadpleegt u de quickstarts voor de Azure CLI, Azure PowerShell, de Azure-portalen de Azure Resource Manager-sjabloon.
Als u Docker Compose wilt gebruiken om lokaal een toepassing met meerdere containers te definiëren en uit te voeren en vervolgens wilt schakelen naar Azure Container Instances, gaat u door naar de zelfstudie.