Images mit der Docker-CLI per Pull abrufen
Erfahren Sie, wie Sie Images mit der Docker-CLI aus Container Registry abrufen.
Mit der Docker-CLI können Sie Images aus Oracle Cloud Infrastructure Registry (auch als Container Registry bezeichnet) abrufen.
Ihre Berechtigungen steuern die Images, die Sie aus Container Registry abrufen können (siehe Policys zur Kontrolle des Repository-Zugriffs). Sie können Images aus von Ihnen erstellten Repositorys, aus öffentlichen Repositorys sowie aus Repositorys abrufen, auf die die Gruppen, denen Sie angehören, durch Identitäts-Policys Zugriff erhalten haben. Wenn Sie zur Administratorengruppe gehören, können Sie Images aus jedem beliebigen Repository im Mandanten abrufen.
Container Registry ist eine Registry, die mit der Open Container Initiative konform ist. Daher können Sie Artefakte speichern, die den Spezifikationen der Open Container Initiative entsprechen, wie Docker-Images, Manifestlisten (manchmal auch als Images mit mehreren Architekturen bezeichnet) und Helm-Diagramme. Bei den Anweisungen in diesem Thema wird davon ausgegangen, dass Sie Docker-Images speichern und die Docker-CLI verwenden.
So rufen Sie Images mit der Docker-CLI aus Container Registry ab:
-
Wenn Sie bereits über ein Authentifizierungstoken verfügen, fahren Sie mit dem nächsten Schritt fort. Andernfalls:
-
Um die Details anzuzeigen, öffnen Sie in der oberen rechten Ecke der Konsole das Menü Profil
, und wählen Sie Benutzereinstellungen (oder Mein Profil oder Ihren Accountnamen) aus.
-
Wählen Sie auf der Seite Authentifizierungstoken die Option Token generieren aus.
-
Geben Sie eine benutzerfreundliche Beschreibung für das Token ein. Geben Sie keine vertraulichen Informationen ein.
-
Wählen Sie Token generieren aus. Das neue Authentifizierungstoken wird angezeigt.
-
Kopieren Sie das Auth-Token sofort in einen sicheren Speicherort, aus dem Sie es später abrufen können, da Sie das Auth-Token nicht erneut in der Konsole anzeigen können.
-
Schließen Sie das Dialogfeld Token generieren.
-
-
Melden Sie sich in einem Terminalfenster auf dem Clientrechner, auf dem Docker ausgeführt wird, bei Container Registry an, indem Sie
docker login <registry-domain>
eingeben. Dabei enthält<registry-domain>
einen Regionsschlüssel oder eine Regions-ID für die verwendete Container Registry-Region. Beispiel:docker login ocir.us-ashburn-1.oci.oraclecloud.com
. Siehe Verfügbarkeit nach Region. -
Wenn Sie zur Eingabe eines Benutzernamens aufgefordert werden, geben Sie Ihren Benutzernamen im Format
<tenancy-namespace>/<username>
ein. Dabei steht<tenancy-namespace>
für die automatisch generierte Object Storage-Namespace-Zeichenfolge Ihres Mandanten (wie auf der Seite Mandanteninformationen angezeigt). Beispiel:ansh81vru1zp/jdoe@acme.com
.Wenn Ihr Mandant mit Oracle Identity Cloud Service föderiert ist, verwenden Sie das Format
<tenancy-namespace>/<domain-name>/<username>
. Für föderierte Benutzer wird die<domain-name>/<username>
im Menü Profilin der Konsole angezeigt. Beispiel: Wenn die Namespace-Zeichenfolge Ihres Mandanten
ansh81vru1zp
lautet und Ihr Mandant mit Oracle Identity Cloud Service föderiert ist und Ihr Benutzernamejdoe@acme.com
lautet, geben Sieansh81vru1zp/oracleidentitycloudservice/jdoe@acme.com
ein. -
Wenn Sie zur Eingabe eines Kennworts aufgefordert werden, geben Sie das zuvor kopierte Authentifizierungstoken ein.
-
Übertragen Sie das Docker-Image per Pull von Container Registry auf den Clientrechner, indem Sie Folgendes eingeben:
docker pull <registry-domain>/<tenancy-namespace>/<repo-name>:<version>
Dabei gilt:
-
<registry-domain>
enthält den Regionsschlüssel oder die Regions-ID für die verwendete Container-Registry-Region. Beispiel:ocir.us-ashburn-1.oci.oraclecloud.com
. Siehe Registry-Domain. -
<tenancy-namespace>
ist die automatisch generierte Zeichenfolge für den Objektspeicher-Namespace des Mandanten, der Eigentümer des Repositorys ist, aus dem Sie das Image abrufen möchten (wie auf der Seite Mandanteninformationen angezeigt). Beispiel: Der Namespace des acme-dev-Mandanten kannansh81vru1zp
lauten. Bei einigen älteren Mandanten kann die Namespace-Zeichenfolge mit dem Mandantennamen in Kleinbuchstaben identisch sein (Beispiel:acme-dev
). Beachten Sie zudem, dass Ihr Benutzer Zugriff auf den Mandanten haben muss. -
<repo-name>
ist der Name eines Repositorys, aus dem Sie das Image abrufen möchten (z.B.project01/acme-web-app
). Hinweis: Ihr Benutzer muss Zugriff auf das Repository haben (siehe Repositorys). -
<version>
ist die Versions-ID des Images, das Sie aus Container Registry abrufen möchten (Beispiel:v2.0.test
).
Beispiel:
docker pull ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app:v2.0.test
Wenn Sie kein
<version>
im Befehldocker pull
angeben, ruft Docker das Image mit der Versions-IDlatest
ab. -
-
Stellen Sie sicher, dass das Image aus der Container Registry abgerufen wurde, indem Sie
docker images
eingeben und prüfen, ob die Liste der Images auf dem Clientrechner jetzt das soeben abgerufene Image enthält.Beispiel:
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ocir.us-ashburn-1.oci.oraclecloud.com/ansh81vru1zp/project01/acme-web-app v2.0.test 8e0506e14874 1 minute ago 162.6 MB acme-web-app latest 8e0506e14874 2 hours ago 162.6 MB acme-web-app v1.0 7d9495d03763 2 hours ago 162.6 MB <none> <none> 6ebd328f833d 5 hours ago 162.6 MB hello-world latest 80b84820d442 5 weeks ago 890 B