Sie können Images von Docker an ein Projekt in der eingebetteten Harbor-Registrierung weitergeben. Projekte in der eingebetteten Harbor-Registrierung entsprechen vSphere-Namespaces in einem Supervisor-Cluster.

Voraussetzungen

Erhalten Sie darüber hinaus Ihr Benutzerkonto, für das Sie über Schreibberechtigungen im Namespace verfügen, der dem Projekt in Harbor-Registrierung entspricht, an das Sie Images weitergeben möchten.

Schließlich benötigen Sie 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 Harbor-Registrierung mit dem vSphere Docker Credential Helper an.
    docker-credential-vsphere login <container-registry-IP> --user [email protected]
    Hinweis: Es ist zwar zulässig, für die Anmeldung den --user username anzugeben, Sie sollten jedoch die UserPrincipalName-Syntax (UPN) ( --user [email protected]) 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/tkgs-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/tkgs-cluster-ns/hello-world:latest
    
    Erwartetes Ergebnis.
    The push refers to repository [10.179.145.77/tkgs-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.
    • Anmelden bei der eingebetteten Harbor-Registrierung-Konsole
    • 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. tkgs-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 eingebettete Harbor-Registrierung:
docker tag busybox:latest <container-registry-IP>/<namespace-name>/busybox:latest
docker push <container-registry-IP>/busybox/busybox:latest

Nächste Maßnahme

Stellen Sie vSphere-Pods mithilfe von Images aus der Harbor-Registrierung bereit. Weitere Informationen hierzu finden Sie unter Bereitstellen einer Anwendung in einem vSphere Pod mithilfe der eingebetteten Harbor-Registrierung.