Déploiement d'un registre Docker local

DockerBeginner
Pratiquer maintenant

Introduction

Un registre Docker est une plateforme logicielle conçue pour stocker, administrer et distribuer des images de conteneurs. S'il est courant d'utiliser des solutions cloud telles que Docker Hub, ces dernières imposent parfois des contraintes de quota ou de confidentialité. Ce défi vous guide dans la mise en place de votre propre registre Docker local, une solution idéale pour sécuriser vos images et garantir la continuité de votre flux de travail, même sans connexion internet.

Configuration du registre Docker

La première étape de ce défi consiste à initialiser votre registre Docker local. Pour ce faire, nous allons utiliser l'image officielle fournie par Docker.

Objectif

L'objectif de cette étape est de mettre en service une instance fonctionnelle du registre Docker.

Exemple de résultat attendu

Voici la marche à suivre pour configurer votre registre :

  1. Récupérez l'image registry depuis le dépôt officiel.
Récupération de l'image Docker registry
  1. Créez un répertoire nommé dockerregistry dans le dossier /home/labex afin de garantir la persistance des données du registre.
Création du répertoire dockerregistry
  1. Lancez un conteneur nommé my-registry basé sur l'image registry. Vous devrez mapper les ports réseau et monter le répertoire dockerregistry précédemment créé en tant que volume.
Lancement du conteneur Docker registry
  1. Utilisez la commande curl pour vérifier que le service est opérationnel et accessible.
Vérification de la disponibilité du registre

Une fois ces actions terminées, vous disposerez d'une instance de registre Docker active sur votre machine locale.

✨ Vérifier la solution et pratiquer

Pousser une image vers le registre Docker

Maintenant que votre registre est opérationnel, il est temps de le tester ! Dans cette étape, nous allons prendre une image d'exemple et l'envoyer vers votre registre local.

Objectif

L'objectif est de réussir à transférer (push) une image vers votre registre Docker local.

Exemple de résultat attendu

Voici les étapes pour publier une image localement :

  1. Récupérez l'image hello-world depuis Docker Hub.
Récupération de l'image hello-world
  1. Créez un nouveau tag pour l'image hello-world en utilisant l'adresse de votre registre local.
Étiquetage de l'image hello-world
  1. Envoyez l'image hello-world vers votre registre.
Envoi de l'image vers le registre local

À l'issue de cette étape, votre image Docker sera stockée dans votre propre registre.

✨ Vérifier la solution et pratiquer

Récupérer une image depuis le registre Docker

Votre registre Docker est maintenant actif et contient votre image d'exemple. Dans cette dernière étape, nous allons démontrer comment récupérer une image directement depuis votre infrastructure locale.

Objectif

L'objectif est de télécharger (pull) une image à partir de votre registre local.

Exemple de résultat attendu

Voici la procédure pour récupérer votre image :

  1. Utilisez la commande docker rmi pour supprimer la copie locale de l'image hello-world que vous aviez étiquetée pour le registre local. Cela permet de vérifier que le prochain téléchargement provient bien du registre.
Suppression de l'image Docker
  1. Téléchargez l'image depuis votre registre Docker local.
Récupération locale de l'image
  1. Lancez un conteneur à partir de l'image que vous venez de récupérer.
Lancement du conteneur à partir de l'image

Une fois cette étape validée, vous aurez prouvé que vous pouvez gérer le cycle de vie complet d'une image via votre registre privé.

✨ Vérifier la solution et pratiquer

Résumé

Félicitations ! Au cours de ce défi, vous avez appris à déployer un registre Docker local, à y stocker vos propres images et à les récupérer pour les utiliser. Disposer d'un registre privé est un atout majeur pour maîtriser la sécurité de vos conteneurs et optimiser vos déploiements en environnement restreint. Vous avez brillamment terminé ce défi !