(VERALTET) Bereitstellen und Verwenden von Azure Container Registry
Tipp
Die aktualisierte Version dieses Lernprogramms, das Azure Kubernetes Service verwendet, finden Sie im Lernprogramm: Bereitstellen und Verwenden von Azure Container Registry.
Warnung
Azure Container Service (ACS) wird ausgemustert. Für ACS werden keine neuen Features oder Funktionen mehr hinzugefügt. Sämtliche APIs, Portalfunktionen, CLI-Befehle und Dokumentationen werden als veraltet gekennzeichnet.
2017 wurde Azure Kubernetes Service (AKS) eingeführt, um die Verwaltung, die Bereitstellung und den Betrieb von Kubernetes zu vereinfachen. Falls Sie den Kubernetes-Orchestrator verwenden, migrieren Sie bitte bis spätestens 31. Januar 2020 zu Azure Kubernetes Service. Informationen zu den ersten Schritten finden Sie unter Migration von Azure Container Service (ACS) zu Azure Kubernetes Service (AKS).
Weitere Informationen finden Sie unter Einstellung von Azure Container Service am 31. Januar 2020.
Azure Container Registry (ACR) ist eine Azure-basierte, private Registrierung für Docker-Containerimages. In diesem Tutorial – Teil 2 von 7 – werden die Schritte für die Bereitstellung einer Azure Container Registry-Instanz und die Übertragung von Containerimages in diese Instanz per Push erläutert. Folgende Schritte werden ausgeführt:
- Bereitstellen einer Azure Container Registry-Instanz
- Kennzeichnen eines Containerimages für ACR
- Hochladen des Images in die ACR-Instanz
In den nachfolgenden Tutorials wird diese ACR-Instanz in einen Azure Container Service-Kubernetes-Cluster integriert.
Voraussetzungen
Im vorherigen Tutorial wurde ein Containerimage für eine einfache Azure Voting-App erstellt. Wenn Sie das Image der Azure Voting-App noch nicht erstellt haben, kehren Sie zum Tutorial 1 – Erstellen von Containerimages zurück.
Für dieses Tutorial müssen Sie mindestens Version 2.0.4 der Azure-Befehlszeilenschnittstelle ausführen. Führen Sie az --version
aus, um die Version zu finden. Installations- und Upgradeinformationen finden Sie bei Bedarf unter Installieren von Azure CLI.
Bereitstellen von Azure Container Registry
Für die Bereitstellung einer Azure Container Registry-Instanz benötigen Sie zunächst eine Ressourcengruppe. Eine Azure-Ressourcengruppe ist ein logischer Container, in dem Azure-Ressourcen bereitgestellt und verwaltet werden.
Erstellen Sie mithilfe des Befehls az group create eine Ressourcengruppe. In diesem Beispiel wird eine Ressourcengruppe mit dem Namen myResourceGroup
in der Region westeurope
erstellt.
az group create --name myResourceGroup --location westeurope
Erstellen Sie mit dem Befehl az acr create eine Azure Container Registry-Instanz. Der Name einer Containerregistrierung muss eindeutig sein.
az acr create --resource-group myResourceGroup --name <acrName> --sku Basic
Für den Rest dieses Tutorials verwenden wir <acrname>
als Platzhalter für den Namen der Containerregistrierung.
Anmeldung bei der Containerregistrierung
Verwenden Sie den Befehl az acr login, um sich bei der ACR-Instanz anzumelden. Sie müssen den eindeutigen Namen angeben, mit dem die Containerregistrierung bei ihrer Erstellung versehen wurde.
az acr login --name <acrName>
Nach Abschluss des Vorgangs wird eine Erfolgsmeldung zurückgegeben.
Kennzeichnen von Containerimages
Verwenden Sie den Befehl docker images, um eine Liste der aktuellen Images anzuzeigen.
docker images
Ausgabe:
REPOSITORY TAG IMAGE ID CREATED SIZE
azure-vote-front latest 4675398c9172 13 minutes ago 694MB
redis latest a1b99da73d05 7 days ago 106MB
tiangolo/uwsgi-nginx-flask flask 788ca94b2313 9 months ago 694MB
Jedes Containerimage muss mit dem loginServer-Namen der Registrierung gekennzeichnet werden. Dieses Tag wird beim Übertragen von Containerimages per Push in eine Imageregistrierung für das Routing verwendet.
Um den „loginServer“-Namen zu erhalten, führen Sie den folgenden Befehl aus.
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
Kennzeichnen Sie nun das Image azure-vote-front
mit dem loginServer-Namen der Containerregistrierung. Fügen Sie zudem :v1
am Ende des Imagenamens hinzu. Dieses Tag gibt die Imageversion an.
docker tag azure-vote-front <acrLoginServer>/azure-vote-front:v1
Führen Sie nach dem Markierten Docker-Images aus, um den Vorgang zu überprüfen.
docker images
Ausgabe:
REPOSITORY TAG IMAGE ID CREATED SIZE
azure-vote-front latest eaf2b9c57e5e 8 minutes ago 716 MB
mycontainerregistry082.azurecr.io/azure-vote-front v1 eaf2b9c57e5e 8 minutes ago 716 MB
redis latest a1b99da73d05 7 days ago 106MB
tiangolo/uwsgi-nginx-flask flask 788ca94b2313 8 months ago 694 MB
Übertragen von Images in die Registrierung per Push
Übertragen Sie das azure-vote-front
-Image per Push in Ihre Registrierung.
Verwenden Sie das folgende Beispiel, und ersetzen Sie den ACR-loginServer-Namen durch den loginServer-Namen aus Ihrer Umgebung.
docker push <acrLoginServer>/azure-vote-front:v1
Dieser Vorgang nimmt einige Minuten in Anspruch.
Auflisten von Images in der Registrierung
Führen Sie den Befehl az acr repository list aus, um eine Liste der Images zurückzugeben, die per Push in Ihre Azure Container Registry-Instanz übertragen wurden. Aktualisieren Sie den Befehl mit dem Namen der ACR-Instanz.
az acr repository list --name <acrName> --output table
Ausgabe:
Result
----------------
azure-vote-front
Verwenden Sie dann den Befehl az acr repository show-tags, um die Tags für ein bestimmtes Image anzuzeigen.
az acr repository show-tags --name <acrName> --repository azure-vote-front --output table
Ausgabe:
Result
--------
v1
Nach Abschluss des Tutorials ist das Containerimage in einer privaten Azure Container Registry-Instanz gespeichert. Dieses Image wird in den nachfolgenden Tutorials aus ACR in einem Kubernetes-Cluster bereitgestellt.
Nächste Schritte
In diesem Tutorial wurde eine Azure Container Registry-Instanz für die Verwendung in einem ACR-Kubernetes-Cluster vorbereitet. Die folgenden Schritte wurden durchgeführt:
- Bereitstellen einer Azure Container Registry-Instanz
- Kennzeichnen eines Containerimages für ACR
- Hochladen des Images in die ACR-Instanz
Im nächsten Tutorial erfahren Sie, wie Sie einen Kubernetes-Cluster in Azure bereitstellen.