Utilisez des images grâce au partage sur le Docker Hub
420-5A4-MT · Module 3 · Techniques DockerPartager son image
Vous avez maintenant créé votre propre image via un Dockerfile, et vous souhaitez partager cette image avec vos collègues. Pour cela, il existe deux solutions :
- soit vous partagez votre fichier Dockerfile à chacun de vos collègues, et vous leur demandez de créer eux-mêmes leur propre image avec un
docker build; - soit vous envoyez votre image sur votre propre registry.
La première solution, bien qu'étant totalement fonctionnelle, force vos collègues à recréer eux-mêmes chacune des images, et cela peut prendre beaucoup de temps.
Pour améliorer cela, vous pouvez utiliser une registry Docker qui vous permet de partager directement votre image.
Créez votre image sur le Docker Hub
Vous allez créer votre image Docker sur le Docker Hub, pour la rendre accessible de façon publique à l'ensemble de la communauté.
Pour cela, vous devez vous rendre sur le site hub.docker.com et vous connecter avec le compte que vous avez créé lors de l'installation de Docker.
Puis, cliquez sur le lien Create Repository. Vous arrivez alors sur une page où vous devez saisir le nom de votre image, ainsi qu'une description.
Pour le reste du cours, nous allons appeler cette image ocr-course-docker. Vous pouvez aussi appeler votre repository de la même façon sur le Docker Hub.
Envoyez votre image sur le Docker Hub
Dans le chapitre précédent, vous avez créé une image Docker via la commande docker build. Nous allons maintenant la publier sur le Docker Hub. Pour cela, nous devons utiliser plusieurs commandes.
Voici la première commande que vous allez utiliser : docker tag ocr-docker-build:latest YOUR_USERNAME/ocr-docker-build:latest. Celle-ci va créer un lien entre notre image ocr-docker-build:latest créée précédemment et l'image que nous voulons envoyer sur le Docker Hub YOUR_USERNAME/ocr-docker-build:latest.
Si le conteneur que vous utilisez n'a pas de nom, utilisez son id de conteneur, que vous pouvez récupérer en retour de la commande docker build.
Vous pouvez maintenant exécuter la dernière commande nécessaire pour envoyer votre image vers le Docker Hub. Pour cela, vous allez exécuter la commande docker push YOUR_USERNAME/ocr-docker-build:latest.
Si vous retournez maintenant sur la page Docker Hub de votre image, vous pourrez voir qu'il existe une première version de celle-ci.
Vous pouvez créer d'autres versions de votre image en remplaçant le :latest par une autre chaîne de caractères. Cependant, il faut bien faire attention, car l'image utilisée par défaut sera toujours l'image :latest.
Trouvez l'image qui vous correspond
Vous pouvez avoir besoin de rechercher des images dans le Docker Hub, mais il existe deux types d'images différents :
- les images officielles ;
- les images personnelles.
Docker Inc propose à ce jour 152 images officielles qu'ils maintiennent à jour continuellement, et vous les retrouverez directement sur le Docker Hub. Il y a aussi de très nombreuses images personnelles créées par différents membres de la communauté, et même par certains éditeurs de solutions open source.
Si vous recherchez une image, vous avez deux façons de procéder :
- la solution du barbu en ligne de commande ;
- la solution classique avec l'interface web.
Pour la solution du barbu, vous devez utiliser la commande docker search ; par exemple, si on recherche une image Nginx :
Comme vous pouvez le voir, le CLI docker vous retourne une liste d'images Docker disponibles.
Vous pouvez aussi faire la même action via le Docker Hub : nous retrouverons là aussi une liste d'images avec les filtres nécessaires pour classer les images comme nous le souhaitons.
En résumé
Vous savez maintenant envoyer votre image sur le Docker Hub, et vous êtes aussi capable de rechercher des images sur celui-ci.
Retenez ces commandes importantes :
docker pushqui vous permet d'envoyer vos images locales sur une registry ;docker searchqui vous permet de rechercher une image sur votre registry.