Sie können Images von Docker an ein vorhandenes Projekt in einer Registrierung wie Docker Hub oder Harbor weitergeben.

Voraussetzungen

Sie benötigen ein lokales Image, das Sie an die Registrierung weitergeben können. Mit dem folgenden Befehl wird das Image „hello-world“ aus dem Docker-Hub abgerufen. Sie benötigen ein Konto, um das Image abzurufen.
docker run hello-world
Erwartetes Ergebnis:
Hello from Docker!
This message shows that your installation appears to be working correctly.
Überprüfen Sie das Image mithilfe des docker images-Befehls.
docker images
REPOSITORY     TAG                 IMAGE ID            CREATED             SIZE
hello-world    latest              bf756fb1ae65        10 months ago       13.3kB

Prozedur

  1. Melden Sie sich bei einer Harbor-Registrierung mit dem vSphere Docker Credential Helper an.
    docker-credential-vsphere login <container-registry-IP> --user username@domain.com
    Hinweis: Es ist zwar zulässig, für die Anmeldung den --user username anzugeben, Sie sollten jedoch die UserPrincipalName-Syntax (UPN) ( --user username@domain.com) zum Anmelden und docker push-Befehle verwenden.
  2. Taggen Sie das Image, das Sie an das Projekt weitergeben möchten, in Harbor-Registrierung mit demselben Namen wie der Namespace, in dem Sie es verwenden möchten:
    docker tag <image-name>[:TAG] <container-registry-IP>/<project-name>/<image-name>[:TAG]
    
    Beispiel:
    docker tag hello-world:latest 10.179.145.77/tkgs-cluster-ns/hello-world:latest
    
    docker images
    REPOSITORY                                    TAG                 IMAGE ID            CREATED             SIZE
    10.179.145.77/tkg-cluster-ns/hello-world     latest              bf756fb1ae65        10 months ago       13.3kB
    hello-world                                   latest              bf756fb1ae65        10 months ago       13.3kB
    
  3. Um ein Image an ein Projekt in Harbor weiterzugeben, führen Sie den folgenden Befehl aus:
    Syntax:
    docker push <container-registry-IP>/<namespace-name>/<image_name>
    Beispiel:
    docker push 10.179.145.77/tkg-cluster-ns/hello-world:latest
    
    Erwartetes Ergebnis.
    The push refers to repository [10.179.145.77/tkg-cluster-ns/hello-world]
    9c27e219663c: Pushed
    latest: digest: sha256:90659bf80b44ce6be8234e6ff90a1ac34acbeb826903b02cfa0da11c82cbc042 size: 525
    
  4. Stellen Sie sicher, dass das Image jetzt in der eingebetteten Harbor-Registrierung verfügbar ist.
    • Melden Sie sich bei der Harbor-Registrierung an.
    • Klicken Sie auf den Projektlink unter Projekte > Projektname.
    • Wählen Sie die Registerkarte Repositorys aus.
    • Das Image, das Sie an die Registrierung weitergegeben haben, sollte in der Form namespace/image-name angezeigt werden, z. B. tkg-cluster-ns/hello-world.
    • Wählen Sie dieses Image aus. Daraufhin werden Ihnen das latest-Tag und weitere Metadaten angezeigt.
  5. Navigieren Sie zurück zur Registerkarte Repositorys.
  6. Wählen Sie das Dropdown-Menü Image-Docker-Befehl weitergeben aus. Die Befehle, um Images mit Tags zu versehen und an dieses Repository weiterzugeben, werden Ihnen zur Verfügung gestellt.

Beispiel

Hier ist ein weiteres Beispiel für die Weitergabe eines Images an die Harbor-Registrierung:
docker tag busybox:latest <container-registry-IP>/<namespace-name>/busybox:latest
docker push <container-registry-IP>/busybox/busybox:latest