Qu'est-ce qu'un registre ?
Explication
Maintenant que vous savez ce qu'est une image de conteneur et comment elle fonctionne, vous vous demandez peut-être où stocker ces images.
Eh bien, vous pouvez stocker vos images de conteneur sur votre système informatique, mais que se passe-t-il si vous voulez les partager avec vos amis ou les utiliser sur une autre machine ? C'est là que le registre d'images entre en jeu.
Un registre d'images est un emplacement centralisé pour stocker et partager vos images de conteneur. Il peut être public ou privé. Docker Hub est un registre public que tout le monde peut utiliser et c'est le registre par défaut.
Bien que Docker Hub soit une option populaire, il existe de nombreux autres registres de conteneurs disponibles aujourd'hui, notamment Amazon Elastic Container Registry(ECR), Azure Container Registry (ACR) et Google Container Registry (GCR). Vous pouvez même exécuter votre propre registre privé sur votre système local ou au sein de votre organisation. Par exemple, Harbor, JFrog Artifactory, GitLab Container registry, etc.
Registre vs. dépôt
Lorsque vous travaillez avec des registres, vous pouvez entendre les termes registre et dépôt comme s'ils étaient interchangeables. Bien qu'ils soient liés, ils ne sont pas tout à fait la même chose.
Un registre est un emplacement centralisé qui stocke et gère les images de conteneur, tandis qu'un dépôt est une collection d'images de conteneur apparentées au sein d'un registre. Considérez-le comme un dossier où vous organisez vos images en fonction des projets. Chaque dépôt contient une ou plusieurs images de conteneur.
Le diagramme suivant montre la relation entre un registre, les dépôts et les images.
NoteVous pouvez créer un dépôt privé et un nombre illimité de dépôts publics en utilisant la version gratuite de Docker Hub. Pour plus d'informations, visitez la page d'abonnement de Docker Hub.
Essayez-le
Dans cette prise en main, vous apprendrez à construire et à pousser une image Docker vers le dépôt Docker Hub.
Créez un compte Docker gratuit
-
Si vous n'en avez pas encore créé, rendez-vous sur la page Docker Hub pour créer un nouveau compte Docker.
Vous pouvez utiliser votre compte Google ou GitHub pour vous authentifier.
Créez votre premier dépôt
-
Connectez-vous à Docker Hub.
-
Sélectionnez le bouton Créer un dépôt dans le coin supérieur droit.
-
Sélectionnez votre espace de noms (très probablement votre nom d'utilisateur) et entrez
docker-quickstart
comme nom de dépôt. -
Définissez la visibilité sur Public.
-
Sélectionnez le bouton Créer pour créer le dépôt.
C'est tout. Vous avez créé avec succès votre premier dépôt. 🎉
Ce dépôt est vide pour le moment. Vous allez maintenant y remédier en y poussant une image.
Connectez-vous avec Docker Desktop
- Téléchargez et installez Docker Desktop, s'il n'est pas déjà installé.
- Dans l'interface graphique de Docker Desktop, sélectionnez le bouton Se connecter dans le coin supérieur droit.
Cloner l'exemple de code Node.js
Pour créer une image, vous avez d'abord besoin d'un projet. Pour commencer rapidement, vous utiliserez un exemple de projet Node.js trouvé sur github.com/dockersamples/helloworld-demo-node. Ce dépôt contient un Dockerfile pré-construit nécessaire pour construire une image Docker.
Ne vous inquiétez pas des spécificités du Dockerfile, car vous en apprendrez davantage dans les sections suivantes.
-
Clonez le dépôt GitHub en utilisant la commande suivante :
git clone https://github.com/dockersamples/helloworld-demo-node
-
Naviguez dans le répertoire nouvellement créé.
cd helloworld-demo-node
-
Exécutez la commande suivante pour construire une image Docker, en remplaçant
VOTRE_NOM_UTILISATEUR_DOCKER
par votre nom d'utilisateur.docker build -t <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart .
NoteAssurez-vous d'inclure le point (.) à la fin de la commande
docker build
. Cela indique à Docker où trouver le Dockerfile. -
Exécutez la commande suivante pour lister l'image Docker nouvellement créée :
docker images
Vous verrez une sortie comme la suivante :
REPOSITORY TAG IMAGE ID CREATED SIZE <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart latest 476de364f70e 2 minutes ago 170MB
-
Démarrez un conteneur pour tester l'image en exécutant la commande suivante (remplacez le nom d'utilisateur par le vôtre) :
docker run -d -p 8080:8080 <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart
Vous pouvez vérifier si le conteneur fonctionne en visitant http://localhost:8080 avec votre navigateur.
-
Utilisez la commande
docker tag
pour étiqueter l'image Docker. Les étiquettes Docker vous permettent de nommer et de versionner vos images.docker tag <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart:1.0
-
Enfin, il est temps de pousser l'image nouvellement construite vers votre dépôt Docker Hub en utilisant la commande
docker push
:docker push <VOTRE_NOM_UTILISATEUR_DOCKER>/docker-quickstart:1.0
-
Ouvrez Docker Hub et naviguez jusqu'à votre dépôt. Naviguez jusqu'à la section Tags et voyez votre image nouvellement poussée.
Dans cette présentation, vous vous êtes inscrit à un compte Docker, avez créé votre premier dépôt Docker Hub, et avez construit, étiqueté et poussé une image de conteneur vers votre dépôt Docker Hub.
Ressources supplémentaires
Prochaines étapes
Maintenant que vous comprenez les bases des conteneurs et des images, vous êtes prêt à en apprendre davantage sur Docker Compose.