Publier une première image Docker sur Docker Hub

Publier une première image Docker sur Docker Hub

21 October 2023

Docker Hub est une plateforme qui vous permet de partager vos images Docker avec d'autres développeurs du monde entier. C'est un élément essentiel pour distribuer et partager vos applications contenérisées.

Qu'est-ce que Docker Hub ?

Docker Hub est une bibliothèque en ligne qui permet de partager des images Docker. C’est un service cloud où les développeurs peuvent partager et collaborer sur des conteneurs Docker, les stocker et les distribuer Voyez cela comme le GitHub des images Dockers. Voici quelques points essentiels à comprendre :

  • Référentiel : Docker Hub agit comme un référentiel d'images Docker. Vous pouvez y pousser vos propres images et tirer des images publiques créées par d'autres développeurs.
  • Images officielles et utilisateurs : il y a des images officielles, maintenues et vérifiées par Docker, ainsi que des images créées et maintenues par d'autres utilisateurs comme vous et moi.
  • Intégration avec Docker : Docker Hub est étroitement intégré à l'outil Docker CLI, facilitant la poussée et la traction des images directement à partir de votre terminal local.
  • Automatisation et workflows : Docker Hub offre également des fonctionnalités d'automatisation telles que les builds automatisés et les webhooks, facilitant l'intégration avec d'autres outils et workflows.

Maintenant que nous avons une meilleure compréhension de ce qu'est Docker Hub, passons aux étapes pour publier votre première image Docker.

Ajouter une image Docker sur Docker Hub

1. Création d'un compte Docker Hub

Rendez-vous sur (Docker Hub)[https://hub.docker.com/] et créer un compte si cela n'est pas déjà fait.

2. Connexion à votre compte depuis la ligne de commande

Dans votre terminal de commande, tapez la commande suivante et suivez les instructions :

docker login

3. Création d'une image Docker locale

Assurez-vous d’avoir une image Docker à publier. Si ce n’est pas le cas, créez-en une.
Pour l'exemple, écrivez un Dockerfile simple. Par exemple, un Dockerfile pour une application Node.js pourrait ressembler à ceci :

FROM node:14
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
CMD [ "node", "app.js" ]

Construisez votre image avec la commande :

docker build -t mon-app .

4. Taguer votre image

Avant de publier, il est essentiel de taguer votre image avec un nom reconnaissable et une version. Utilisez la commande suivante :

docker tag mon-app mon-identifiant/mon-app:1.0

Les erreurs possibles à ce stade

Cannot connect to the Docker daemon at .docker/run/docker.sock. Is the docker daemon running?

Vous n'avez probablement pas exécuté l'application Docker Desktop

Error response from daemon: No such image: mon-app:latest

Docker n'a pas pu trouver une image locale nommée "mon-app" avec le tag "latest" sur votre système. Pour résoudre ce problème, voici quelques étapes que vous pouvez suivre :

  • Exécutez la commande docker images ou docker image ls pour lister toutes les images disponibles localement.
  • Cherchez l’image mon-app et vérifiez si elle a le tag latest:
    • Si vous avez déjà construit l'image, mais avec un tag différent, vous pouvez ajouter un tag latest à l’image.
    • Si vous n'avez pas encore construit l'image, assurez-vous de le faire avec le tag latest ou sans spécifier de tag, ce qui ajoutera automatiquement le tag latest.
  • Docker est sensible à la casse. Assurez-vous que vous avez utilisé la bonne casse et orthographe dans le nom de votre image et le tag.

5. Publier l'image sur Docker Hub

À présent, vous êtes prêt à publier votre image. Utilisez la commande suivante pour la pousser vers Docker Hub :

docker push mon-identifiant/mon-app:1.0

Mettre à jour une image Docker sur Docker Hub

1. Mettre à jour votre image localement

Apportez les modifications nécessaires à votre application ou votre Dockerfile et reconstruisez votre image localement en utilisant la commande docker build.

2. Taguer votre nouvelle image

Taguez votre nouvelle image avec une nouvelle version ou utilisez le tag latest pour la dernière version.

docker tag mon-app mon-identifiant/mon-app:2.0

3. Poussez votre nouvelle image

Poussez la nouvelle image taguée vers Docker Hub avec la commande docker push.

docker push mon-identifiant/mon-app:2.0

Gérer les tags sur Docker Hub

Sur Docker Hub, vous pouvez voir différentes versions de votre image en fonction des tags. Vous pouvez gérer ces tags pour organiser vos images, les marquer ou les supprimer si nécessaire.