Freigeben über


Lernprogramm: Bereitstellen einer Containeranwendung in Azure-Containerinstanzen

Dies ist das letzte Lernprogramm in einer dreiteiligen Reihe. Früher in der Reihe wurde ein Containerimage erstellt und an die Azure-Containerregistrierung übertragen. Dieser Artikel schließt die Reihe ab, indem der Container in Azure-Containerinstanzen bereitgestellt wird.

In diesem Tutorial erfahren Sie:

  • Bereitstellung des Containers aus der Azure Container Registry in Azure Container Instances
  • Anzeigen der ausgeführten Anwendung im Browser
  • Anzeigen der Protokolle des Containers

Bevor Sie anfangen

Sie müssen die folgenden Anforderungen erfüllen, um dieses Lernprogramm abzuschließen:

Azure CLI: Sie müssen Die Azure CLI-Version 2.0.29 oder höher auf Ihrem lokalen Computer installiert haben. Führen Sie az --version aus, um die Version zu finden. Wenn Sie die Azure CLI installieren oder aktualisieren müssen, siehe Installieren der Azure CLI.

Docker: In diesem Lernprogramm wird ein grundlegendes Verständnis der grundlegenden Docker-Konzepte wie Container, Containerimages und grundlegenden docker Befehlen vorausgesetzt. Eine Einführung in Docker und Container finden Sie in der Docker-Übersicht.

Docker: Um dieses Lernprogramm abzuschließen, müssen Sie Docker lokal installiert haben. Für die Docker-Umgebung stehen Konfigurationspakete für macOS, Windows und Linux zur Verfügung.

Von Bedeutung

Da die Azure Cloud Shell nicht den Docker-Daemon enthält, müssen Sie sowohl das Azure CLI- als auch das Docker-Modul auf Ihrem lokalen Computer installieren, um dieses Lernprogramm abzuschließen. Sie können die Azure Cloud Shell für dieses Lernprogramm nicht verwenden.

Bereitstellen des Containers mithilfe der Azure CLI

In diesem Abschnitt verwenden Sie die Azure CLI, um das im ersten Lernprogramm integrierte Image bereitzustellen und im zweiten Lernprogramm an die Azure-Containerregistrierung zu übertragen. Stellen Sie sicher, dass Sie diese Lernprogramme abschließen, bevor Sie fortfahren.

Abrufen von Registrierungsanmeldeinformationen

Wenn Sie ein Image bereitstellen, das in einer privaten Azure-Containerregistrierung wie dem im zweiten Lernprogramm erstellten gehostet wird, müssen Sie Anmeldeinformationen für den Zugriff auf die Registrierung angeben.

Eine bewährte Methode für viele Szenarien ist das Erstellen und Konfigurieren eines Microsoft Entra-Dienstprinzipals mit Pull-Berechtigungen für Ihre Registrierung. Beispielskripts zum Erstellen eines Dienstprinzipals mit den erforderlichen Berechtigungen finden Sie unter Authentifizieren per Azure Container Registry über Azure Container Instances. Notieren Sie sich die Dienstprinzipal-ID und das Dienstprinzipalkennwort. Sie verwenden diese Anmeldeinformationen, um auf die Registrierung zuzugreifen, wenn Sie den Container bereitstellen.

Außerdem benötigen Sie den vollständigen Namen des Registrierungsservers der Containerregistrierung (ersetzen Sie <acrName> durch den Namen Ihrer Registrierung):

az acr show --name <acrName> --query loginServer

Container bereitstellen

Verwenden Sie nun den Befehl "az container create " zum Bereitstellen des Containers. Ersetzen Sie den <acrLoginServer> Wert, den Sie aus dem vorherigen Befehl abgerufen haben. Ersetzen Sie <service-principal-ID> und <service-principal-password> durch die Dienstprinzipal-ID und das Kennwort, die Sie erstellt haben, um auf die Registrierung zuzugreifen. Ersetzen Sie den <aciDnsLabel> Namen durch einen gewünschten DNS-Namen.

az container create --resource-group myResourceGroup --name aci-tutorial-app --image <acrLoginServer>/aci-tutorial-app:v1 --cpu 1 --memory 1 --registry-login-server <acrLoginServer> --registry-username <service-principal-ID> --registry-password <service-principal-password> --ip-address Public --dns-name-label <aciDnsLabel> --ports 80

Innerhalb weniger Sekunden sollten Sie eine erste Antwort von Azure erhalten. Der --dns-name-label Wert muss innerhalb der Azure-Region eindeutig sein, in der Sie die Containerinstanz erstellen. Ändern Sie den Wert im vorherigen Befehl, wenn beim Ausführen des Befehls eine Fehlermeldung mit der DNS-Namensbezeichnung angezeigt wird.

Überprüfen des Bereitstellungsfortschritts

Um den Status der Bereitstellung anzuzeigen, verwenden Sie az container show:

az container show --resource-group myResourceGroup --name aci-tutorial-app --query instanceView.state

Wiederholen Sie den Befehl az container show, bis sich der Status von Pending zu Running ändert, was weniger als eine Minute dauern sollte. Wenn der Container Running ist, gehen Sie zum nächsten Schritt über.

Anwendung und Container-Logs anzeigen

Nachdem die Bereitstellung erfolgreich war, zeigen Sie den vollqualifizierten Domänennamen (FQDN) des Containers mit dem Befehl "az container show " an:

az container show --resource-group myResourceGroup --name aci-tutorial-app --query ipAddress.fqdn

Beispiel:

"aci-demo.eastus.azurecontainer.io"

Um die ausgeführte Anwendung anzuzeigen, navigieren Sie zu dem angezeigten DNS-Namen in Ihrem bevorzugten Browser:

Hello World-App im Browser

Sie können auch die Protokollausgabe des Containers anzeigen:

az container logs --resource-group myResourceGroup --name aci-tutorial-app

Beispielausgabe:

listening on port 80
::ffff:10.240.0.4 - - [21/Jul/2017:06:00:02 +0000] "GET / HTTP/1.1" 200 1663 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36"
::ffff:10.240.0.4 - - [21/Jul/2017:06:00:02 +0000] "GET /favicon.ico HTTP/1.1" 404 150 "http://aci-demo.eastus.azurecontainer.io/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36"

Bereinigen von Ressourcen

Wenn Sie keine der in dieser Lernprogrammreihe erstellten Ressourcen mehr benötigen, können Sie den Befehl "az group delete " ausführen, um die Ressourcengruppe und alle darin enthaltenen Ressourcen zu entfernen. Mit diesem Befehl wird die von Ihnen erstellte Containerregistrierung, der ausgeführte Container und alle zugehörigen Ressourcen gelöscht.

az group delete --name myResourceGroup

Nächste Schritte

In diesem Lernprogramm haben Sie den Prozess der Bereitstellung Ihres Containers in Azure-Containerinstanzen abgeschlossen. Die folgenden Schritte wurden durchgeführt:

  • Bereitstellen des Containers aus der Azure-Containerregistrierung mithilfe der Azure CLI
  • Im Browser wurde die Anwendung angezeigt.
  • Die Containerprotokolle anzeigen

Nachdem Sie nun über die Grundlagen verfügen, erfahren Sie mehr über Azure-Containerinstanzen, z. B. wie Containergruppen funktionieren:

Containergruppen in Azure-Containerinstanzen