Adjoindre notre image au Dockerhub
Pour garder en "mémoire" notre image, on peut enregistrer notre Dockerfile à un endroit. Ainsi même si nous supprimons notre image personnalisée, on pourra le créer de nouveau.
Une autre méthode consiste à l'envoyer dans le Dockerhub. Si vous le faites via un compte gratuit, il sera public et donc disponible pour tout monde 🌍.
Dans ce cours, nous verrons comment ajouter au Dockerhub une image.
Dockerhub rappel
Avant d'ajouter quoi que ce soit, faisons un bref rappel de ce qu'est Dockerhub.
C'est une plateforme qui contient la liste de toutes les images disponibles. Les images publiques peuvent être téléchargées par n'importe qui (dès lors que cette personne sache utiliser l'outil Docker).
Inscription
Pour utiliser cette plateforme, les utilisateurs doivent s'inscrire.
Remplissez les champs et connectez-vous à votre compte.
Vous allez tomber sur votre page personnelle qui liste toutes vos images.
Ci-dessus, ma page personnelle. Vous reconnaissez certainement la seule image que j'ai créé celtak/ubuntu-ping-ip
.
Dans votre page personnelle, sauf si vous avez déjà utilisé Dockerhub, il ne devrait pas y avoir d'image. Mais maintenant, nous allons ajouter ensemble ubuntu_nodejs
.
Créer un nouveau repository
Nous allons créer un nouveau repository.
Mais qu'est-ce qu'un repository 🤔?
En anglais repository signifie dépôt. On va donc en quelque sorte déposer une image dans la plateforme.
⓵ Cliquez sur "Create repository"
⓶ Informations image
Complétez la fiche qui apparaît. Donner un nom à l'image qui sera envoyé au Dockerhub.
Nous l'appellerons ubuntu_nodejs
. Vous pouvez choisir un autre nom si vous le désirez.
Appuyez sur le bouton "Create".
Notez que pour utiliser cette image, il faut tapez dans mon cas celtak/ubuntu-ping-ip
et non juste ubuntu-ping-ip
. celtak
étant le nom de mon compte. Le vôtre sera bien évidemment différent.
Parfait 😃 ! Notre image est bien dans le Dockerhub. Enfin non pas tout à fait 🥺 ! Il nous reste une dernière chose à faire.
En effet, nous avons préparé le terrain. Mais pour l'instant, aucune image n'est rattaché au repository.
Preuve en est le fait que la commande ci-dessous ne fonctionnera pas.
docker run --rm -it celtak/ubuntu_nodejs
Unable to find image 'celtak/ubuntu_nodejs:latest' locally
Publier notre image dans le repository
Pour mettre notre image dans le repository, il faut que celle-ci soit déjà construite. Normalement, c'est déjà le cas, mais si vous l'avez supprimé, vous pouvez refaire ce qui est décrit dans la leçon construire une image dans Docker.
Vérifions que nous l'avons bien.
docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu_nodejs latest f64149a721f0 3 days ago 180MB
C'est ok 👍!
Maintenant nous allons passer à la chose la plus importante, c'est-à-dire publier notre image personnalisé en l'envoyant à notre repository. Cela se fait en deux étapes.
⓵ Tag
docker tag ubuntu_nodejs celtak/ubuntu_nodejs
Après tag
il faut tapez le nom de notre image (ou son id) et ensuite le nom de notre repository.
⓶ Push
La commande ci-dessous permet d'envoyer notre image.
docker push celtak/ubuntu_nodejs
Il faudra peut-être vous loguer au préalable sur le terminal avant d'utiliser la commande docker push
.
⓷ Vérifier
Après avoir utilisé les deux commandes ci-dessus, vérifions s'il est possible de bénéficier de notre image via le Dockerhub.
docker run --rm -it celtak/ubuntu_nodejs
Ça marche 😉 !
Page personnalisé de notre repository
Si on retourne dans la page principale de notre Dockerhub (onglet "Repositories") et que l'on clique sur notre image on à plusieurs informations utiles.