Pullen von Images aus einer verbundenen Registry auf einem IoT Edge-Gerät (in Kürze als veraltet eingestuft)
Um Images per Pull aus einer verbundenen Registrierung abzurufen, konfigurieren Sie ein Clienttoken, und übergeben Sie die Tokenanmeldeinformationen für den Zugriff auf den Inhalt der Registrierung.
Voraussetzungen
Verwenden Sie die Bash-Umgebung in Azure Cloud Shell. Weitere Informationen finden Sie unter Schnellstart für Bash in Azure Cloud Shell.
Wenn Sie CLI-Referenzbefehle lieber lokal ausführen, installieren Sie die Azure CLI. Wenn Sie Windows oder macOS ausführen, sollten Sie die Azure CLI in einem Docker-Container ausführen. Weitere Informationen finden Sie unter Ausführen der Azure CLI in einem Docker-Container.
Wenn Sie eine lokale Installation verwenden, melden Sie sich mithilfe des Befehls az login bei der Azure CLI an. Führen Sie die in Ihrem Terminal angezeigten Schritte aus, um den Authentifizierungsprozess abzuschließen. Informationen zu anderen Anmeldeoptionen finden Sie unter Anmelden mit der Azure CLI.
Installieren Sie die Azure CLI-Erweiterung beim ersten Einsatz, wenn Sie dazu aufgefordert werden. Weitere Informationen zu Erweiterungen finden Sie unter Verwenden von Erweiterungen mit der Azure CLI.
Führen Sie az version aus, um die installierte Version und die abhängigen Bibliotheken zu ermitteln. Führen Sie az upgrade aus, um das Upgrade auf die aktuelle Version durchzuführen.
- Verbundene Registrierungsressource in Azure. Bereitstellungsschritte finden Sie unter Schnellstart: Erstellen einer verbundenen Registrierung mithilfe der Azure CLI.
- Instanz der verbundenen Registrierung, die auf einem IoT Edge-Gerät bereitgestellt ist. Bereitstellungsschritte finden Sie unter Schnellstart: Bereitstellen einer verbundenen Registrierung auf einem IoT Edge-Gerät oder Tutorial: Bereitstellen einer verbundenen Registrierung auf geschachtelten IoT Edge-Geräten. In den Befehlen in diesem Artikel ist der Name der verbundenen Registrierung in der Umgebungsvariablen $CONNECTED_REGISTRY_RW gespeichert.
Erstellen einer Bereichszuordnung
Verwenden Sie den Befehl az acr scope-map create, um eine Bereichszuordnung für den Lesezugriff auf das Repository hello-world
zu erstellen:
# Use the REGISTRY_NAME variable in the following Azure CLI commands to identify the registry
REGISTRY_NAME=<container-registry-name>
az acr scope-map create \
--name hello-world-scopemap \
--registry $REGISTRY_NAME \
--repository hello-world content/read \
--description "Scope map for the connected registry."
Erstellen eines Clienttokens
Verwenden Sie den Befehl az acr token create, um ein Clienttoken zu erstellen und mit der neu erstellten Bereichszuordnung zu verknüpfen:
az acr token create \
--name myconnectedregistry-client-token \
--registry $REGISTRY_NAME \
--scope-map hello-world-scopemap
Der Befehl gibt Details zum neu generierten Token zurück, einschließlich Kennwörtern.
Wichtig
Stellen Sie sicher, dass Sie die generierten Kennwörter speichern. Es handelt sich um einmalige Kennwörter, die nicht erneut abgerufen werden können. Sie können mit dem Befehl az acr token credential generate neue Kennwörter generieren.
Aktualisieren der verbundenen Registrierung mit dem Clienttoken
Verwenden Sie den Befehl az acr connected-registry update, um die verbundene Registrierung mit dem neu erstellten Clienttoken zu aktualisieren.
az acr connected-registry update \
--name $CONNECTED_REGISTRY_RW \
--registry $REGISTRY_NAME \
--add-client-token myconnectedregistry-client-token
Abrufen eines Images aus der verbundenen Registrierung per Pull
Verwenden Sie auf einem Computer mit Zugriff auf das IoT Edge-Gerät den folgenden Beispielbefehl, um sich mithilfe der Clienttokenanmeldeinformationen bei der verbundenen Registrierung anzumelden. Best Practices zur Verwaltung von Anmeldeinformationen finden Sie in der Befehlsreferenz Docker-Anmeldung.
Achtung
Wenn Ihre verbundene Registrierung als unsichere Registrierung eingerichtet wurde, aktualisieren Sie die Liste der unsicheren Registrierungen in der Docker-Daemonkonfiguration so, dass sie die IP-Adresse (oder den FQDN) und den Port Ihrer verbundenen Registrierung auf dem IoT Edge-Gerät enthält. Diese Konfiguration sollte nur zu Testzwecken verwendet werden. Weitere Informationen finden Sie unter Testen einer unsicheren Registrierung.
docker login --username myconnectedregistry-client-token \
--password <token_password> <IP_address_or_FQDN_of_connected_registry>:<port>
Stellen Sie in IoT Edge-Szenarien sicher, dass Sie den Port angeben, der zum Erreichen der verbundenen Registrierung auf dem Gerät verwendet wird. Beispiel:
docker login --username myconnectedregistry-client-token \
--password xxxxxxxxxxx 192.0.2.13:8000
Verwenden Sie dann den folgenden Befehl, um das Image hello-world
per Pull abzurufen:
docker pull <IP_address_or_FQDN_of_connected_registry>:<port>/hello-world
Nächste Schritte
- Erfahren Sie mehr über Token im Repositorybereich.
- Erfahren Sie mehr über den Zugriff auf eine verbundene Registrierung.