Vous pouvez transférer des images de Docker vers un projet existant sur un registre tel que Docker Hub ou Harbor.
Conditions préalables
Vous avez besoin d'une image locale que vous pouvez transférer vers le registre. La commande suivante extrait l'image hello-world du Hub Dock. Vous aurez besoin d'un compte pour extraire l'image.
docker run hello-world
Résultat attendu :
Hello from Docker!
This message shows that your installation appears to be working correctly.
Vérifiez l'image à l'aide de la commande
docker images
.
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest bf756fb1ae65 10 months ago 13.3kB
Procédure
- Connectez-vous à Registre Harbor à l'aide de l'assistance des informations d'identification de vSphere Docker.
docker-credential-vsphere login <container-registry-IP> --user username@domain.com
Note : Bien que la fourniture de
--user username
est acceptable pour la connexion, vous devez utiliser la syntaxe UserPrincipalName (UPN) (
--user username@domain.com
) pour vous connecter et utiliser les commandes
docker push
.
- Balisez l'image que vous souhaitez transférer vers le projet dans Registre Harbor avec le même nom que l'espace de noms où vous souhaitez l'utiliser :
docker tag <image-name>[:TAG] <container-registry-IP>/<project-name>/<image-name>[:TAG]
Par exemple :
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
- Pour transférer une image vers un projet dans Harbor, exécutez la commande suivante :
Syntaxe :
docker push <container-registry-IP>/<namespace-name>/<image_name>
Par exemple :
docker push 10.179.145.77/tkg-cluster-ns/hello-world:latest
Résultat attendu.
The push refers to repository [10.179.145.77/tkg-cluster-ns/hello-world]
9c27e219663c: Pushed
latest: digest: sha256:90659bf80b44ce6be8234e6ff90a1ac34acbeb826903b02cfa0da11c82cbc042 size: 525
- Vérifiez que l'image est maintenant disponible dans le registre Harbor intégré.
- Connectez-vous au registre Harbor.
- Cliquez sur le lien du projet dans .
- Sélectionnez l'onglet Référentiels.
- Vous devez voir que l'image que vous avez envoyée au registre est présente, sous la forme
namespace/image-name
, telle que tkg-cluster-ns/hello-world
.
- Sélectionnez cette image et vous voyez la balise
latest
et d'autres métadonnées.
- Revenez à l'onglet Référentiels.
- Sélectionnez le menu déroulant Commande de transfert du Docker d'image. Les commandes pour baliser et transférer des images vers ce référentiel sont à votre disposition.
Exemple
Voici un autre exemple de transfert d'image vers le registre Harbor :
docker tag busybox:latest <container-registry-IP>/<namespace-name>/busybox:latest
docker push <container-registry-IP>/busybox/busybox:latest