Übung: Bereitstellen des Docker-Images in einer Azure-Containerinstanz

Abgeschlossen

Die Azure-Containerinstanz ermöglicht die Ausführung eines Docker-Images in Azure.

In der vorherigen Übung haben Sie Ihre Web-App als ein lokales Docker-Image gepackt und getestet. Nun möchten Sie die Ausgabe dieser Übung verwenden und eine Webanwendung global verfügbar machen. Führen Sie das Image als Azure Container Instances-Instanz aus, um den Veröffentlichungsvorgang abzuschließen.

In dieser Übung lernen Sie, wie Sie das Image für die Web-App neu erstellen und in Azure Container Registry hochladen. Sie verwenden den Azure-Containerinstanzdienst, um das Image auszuführen.

Wichtig

Sie benötigen für diese Übung ein eigenes Azure-Abonnement. Außerdem fallen möglicherweise Gebühren für Sie an. Wenn Sie noch kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen.

Erstellen einer Containerregistrierung

  1. Melden Sie sich mit Ihrem Azure-Abonnement beim Azure-Portal an.

  2. Wählen Sie im Ressourcenmenü oder auf der Startseite die Option Ressource erstellen aus. Der Bereich Ressource erstellen wird angezeigt.

  3. Wählen Sie im Menü die Option Container aus, und wählen Sie dann Containerregistrierung aus.

    Screenshot that shows Create a resource with Container Registry.

    Der Bereich Containerregistrierung erstellen wird angezeigt.

  4. Füllen Sie auf der Registerkarte Grundlagen die folgenden Felder für jede Einstellung aus.

    Einstellung Wert
    Projektdetails
    Subscription Wählen Sie Ihr Azure-Abonnement aus, in dem Sie Ressourcen erstellen und verwalten können.
    Resource group Wählen Sie „Neue Ressourcengruppe erstellen“ mit dem Namen learn-deploy-container-aci-rg aus. Merken Sie sich den Namen, den Sie auswählen, da Sie ihn in den restlichen Übungen in diesem Modul verwenden werden. Denken Sie auch daran, diese Ressource zu bereinigen, wenn Sie mit dem Modul fertig sind.
    Instanzendetails
    Registrierungsname Wählen Sie den gewümschten Namen aus. Der Registrierungsname muss innerhalb von Azure eindeutig sein und zwischen 5 und 50 alphanumerische Zeichen enthalten.
    Standort Wählen Sie einen Standort in Ihrer Nähe aus.
    SKU Standard
  5. Klicken Sie auf Überprüfen + erstellen. Wenn die Benachrichtigung Überprüfung erfolgreich angezeigt wird, wählen Sie Erstellen aus. Warten Sie, bis die Containerregistrierung bereitgestellt wurde, bevor Sie fortfahren.

  6. Wählen Sie Zu Ressource wechseln aus. Im Bereich Containerregistrierung werden wichtige Informationen zu Ihrer Containerregistrierung angezeigt.

  7. Wählen Sie im Ressourcenmenü unter Einstellungen die Option Zugriffsschlüssel aus. Der Bereich Zugriffsschlüssel für Ihre Containerregistrierung wird angezeigt.

  8. Wenn die Einstellung Administratorbenutzer deaktiviert ist, wählen Sie den Schieberegler aus, um den Administratorbenutzer-Zugriffsschlüssel zu aktivieren. Der Benutzername und das Kennwort werden für Ihre Containerregistrierung angezeigt.

  9. Notieren Sie sich den Registrierungsnamen, den Anmeldeserver, den Benutzernamen und die Kennwörter für Ihre Containerregistrierung.

    Hinweis

    In dieser Übung aktivieren Sie den Zugriff auf das Administratorkonto, sodass Sie Images hochladen und die Registrierung testen können. In einer Produktionsumgebung ist es wichtig, den Administratorbenutzer-Kontozugriff zu deaktivieren und Microsoft Entra ID Protection zu verwenden, sobald Sie zufrieden sind, dass die Registrierung wie erwartet funktioniert.

    Screenshot of the Access keys details.

Laden Sie das Image für die Hotelreservierungssystem-App in Azure Container Registry hoch.

  1. Führen Sie an der lokalen Eingabeaufforderung den folgenden Befehl aus, und ersetzen Sie <registry-name> durch den Namen Ihrer Containerregistrierung, um das aktuelle reservationsystem-Image mit dem Namen Ihrer Registrierung zu markieren:

    docker tag reservationsystem:latest <registry-name>.azurecr.io/reservationsystem:latest
    
  2. Führen Sie den Befehl docker image ls aus, um sicherzustellen, dass das Image ordnungsgemäß mit einem Tag versehen wurde:

    docker image ls
    

    Etwa folgende Ausgabe sollte angezeigt werden:

    REPOSITORY                                    TAG                 IMAGE ID            CREATED             SIZE
    reservationsystem                             latest              a56281e7038f        4 minutes ago       1.76GB
    <registry-name>.azurecr.io/reservationsystem  latest              a56281e7038f        4 minutes ago       1.76GB
    
  3. Melden Sie sich an der Eingabeaufforderung bei Ihrer Azure Container Registry-Instanz an. Verwenden Sie den Befehl docker login, und geben Sie den Anmeldeserver für die Registrierung an, den Sie zuvor notiert haben. Geben Sie den Benutzernamen und das Kennwort aus Ihren Zugriffsschlüsseln ein, wenn Sie dazu aufgefordert werden.

    docker login <login-server>
    

    Hinweis

    Möglicherweise erhalten Sie eine Fehlerantwort von einem Daemon mit der Mitteilung, dass Ihre Anwendung nicht bei Microsoft Entra-ID registriert ist. Wie bereits in dieser Übung erwähnt haben Sie den Administratorbenutzer-Zugriffsschlüssel aktiviert, um Ihre Bereitstellung zu testen.

  4. Geben Sie den folgenden Befehl ein, und ersetzen Sie <registry-name> dabei durch Ihren eigenen Registrierungsnamen, um das Image in Ihre Registrierung in Azure Container Registry hochzuladen:

    docker push <registry-name>.azurecr.io/reservationsystem:latest
    

    Warten Sie, bis der Upload abgeschlossen ist. Es dauert einige Minuten, bis alle Objekte des Images in Ihr Repository gepusht werden. Sie können den Fortschritt beobachten, während jedes Objekt von Warten zu Wird vorbereitet und von Pushing (Mithilfe von Push übertragen) zu Push durchgeführt wechselt.

Überprüfen des Inhalts der Registrierung

Für den Rest der Übung kehren Sie zum Azure-Portal zurück.

  1. Kehren Sie im Azure-Portal zu Ihrer Containerregistrierung zurück.

  2. Wählen Sie im Ressourcenmenü unter Dienste die Option Repositorys aus. Der Bereich Repositorys für Ihre Containerregistrierung wird angezeigt.

  3. Überprüfen Sie, ob das Repository reservationsystem angezeigt wird. Wählen Sie das Repository reservationsystem aus, und vergewissern Sie sich, dass das Repository ein Image mit dem Tag latest enthält.

    Screenshot showing the repository and tagged reservation system container image in the registry.

Laden und Ausführen eines Images mit der Azure-Containerinstanz

  1. Klicken Sie im Azure-Portal auf Ressource erstellen. Der Bereich Ressource erstellen wird angezeigt.

  2. Wählen Sie im Ressourcenmenü Container aus, und wählen Sie dann Containerinstanzen aus.

    Screenshot showing Container Instances.

    Der Bereich Containerinstanz erstellen wird angezeigt.

    Es sind mehrere Schritte zum Konfigurieren einer Containerinstanz nötig. Beginnen Sie mit dem Festlegen der Ressourcengruppeninformationen und der Containerdetails. Konfigurieren Sie als Nächstes die Netzwerkoptionen des Containers, und starten Sie die Richtlinie neu.

  3. Füllen Sie auf der Registerkarte Grundlagen die folgenden Werte für jede Einstellung aus.

    Einstellung Wert
    Projektdetails
    Subscription Wählen Sie Ihr Azure-Standardabonnement aus, in dem Sie Ressourcen erstellen und verwalten können.
    Ressourcengruppe Verwenden Sie die vorhandene Ressourcengruppe learn-deploy-container-aci-rg erneut
    Details zum Container
    Containername hotelsysteminstance
    Region Verwenden Sie den Standardort.
    Imagequelle Docker Hub oder andere Registrierung
    Imagetyp Privat
    Image <registry-name>.azurecr.io/reservationsystem:latest
    Anmeldeserver der Imageregistrierung Geben Sie den Namen des Anmeldeservers für Ihre Registrierung ein.
    Benutzername der Imageregistrierung Geben Sie den Benutzernamen für Ihre Registrierung ein.
    Kennwort der Imageregistrierung Geben Sie das Kennwort für Ihre Registrierung ein.
    Betriebssystemtyp Linux
    Größe Belassen Sie die Standardgröße bei 1 vCPU, 1,5 GiB Speicher, 0 GPUs.
  4. Klicken Sie auf Weiter: Netzwerk.

  5. Geben Sie auf der Registerkarte Netzwerk die folgenden Werte für jede Einstellung ein.

    Einstellung Wert
    Netzwerktyp Öffentlich
    DNS-Namensbezeichnung Wählen Sie einen eindeutigen Namen aus, der als Teil der URL des Containers verwendet wird.
    Ports
    Ports 80
    Portprotokoll TCP
  6. Klicken Sie auf Weiter: Erweitert.

  7. Geben Sie auf der Registerkarte Erweitert die folgenden Werte für jede Einstellung ein.

    Einstellung Wert
    Neustartrichtlinie Immer
    Umgebungsvariablen alle Einstellungen leer lassen
    Befehlsaußerkraftsetzung nicht ausfüllen
  8. Klicken Sie auf Überprüfen + erstellen. Warten Sie auf den Abschluss der Überprüfung und korrigieren Sie ggf. alle Fehler.

  9. Klicken Sie auf Erstellen.

  10. Nachdem die Containerinstanz erstellt wurde, wählen Sie Zu Ressource wechseln aus. Der Containerinstanzbereich wird angezeigt.

  11. Suchen Sie im Bereich Übersicht den vollqualifizierten Domänennamen (FQDN) der Containerinstanz.

    Screenshot that shows the New pane in Azure portal showing the Container properties with the FQDN highlighted.

  12. Navigieren Sie mithilfe eins Webbrowsers zur URL http://FQDN/api/reservations/1, und ersetzen Sie FQDN mit dem vollqualifizierten Domänennamen Ihrer Containerinstanz. Beispielsweise würde das Verwenden des sichtbaren FQDN im obigen Screenshot wie folgt aussehen:

    http://hotel.southcentralus.azurecontainer.io/api/reservations/1
    

    Die Web-App sollte mit einem JSON-Objekt antworten, das die Details für die Reservierung 1 enthält.

Herzlichen Glückwunsch! Sie haben das Docker-Image in Azure Container Registry hochgeladen und es mit dem Azure-Containerinstanzdienst ausgeführt.