Docker - Registres Privés

Introduction aux Registres Docker

Salut à toi, futur maître de Docker ! Aujourd'hui, nous allons plonger dans le monde fascinant des registres Docker. Ne t'inquiète pas si tu es nouveau dans ce domaine ; je vais te guider étape par étape, comme j'ai fait pour des centaines d'étudiants au fil des ans. Commençons notre voyage !

Docker - Registries

Un registre Docker est comme une bibliothèque pour tes images Docker. C'est un endroit où tu peux stocker, gérer et distribuer ces images. Pense à cela comme une étagère où tu gardes tous tes livres préférés (ou dans ce cas, tes images Docker) bien organisés et facilement accessibles.

Types de Registres Docker

Il existe deux types principaux de registres Docker :

  1. Registres publics (comme Docker Hub)
  2. Registres privés

Aujourd'hui, nous nous concentrerons sur les registres privés. Mais pourquoi voudrais-tu un registre privé ? Eh bien, imagine que tu écris une recette secrète. Tu ne voudrais pas la publier sur un tableau d'annonces public, n'est-ce pas ? C'est là que les registres privés deviennent pratiques !

Configuration d'un Registre Privé

Mettons-nous au travail et configurons notre propre registre privé. C'est plus simple que tu ne pourrais le penser !

Étape 1 : Tire l'Image du Registre

Tout d'abord, nous devons tirer l'image officielle du registre depuis Docker Hub. Ouvre ton terminal et tape :

docker pull registry:2

Cette commande est comme demander à la bibliothécaire de t'apporter le livre "registre" de la "bibliothèque Docker Hub".

Étape 2 : Lancer le Conteneur du Registre

Maintenant, lançons notre registre :

docker run -d -p 5000:5000 --name my-registry registry:2

Décomposons cela :

  • -d : Lancer le conteneur en mode détaché (en arrière-plan)
  • -p 5000:5000 : Mapper le port 5000 du conteneur au port 5000 de l'hôte
  • --name my-registry : Donner un nom amical à notre conteneur
  • registry:2 : L'image que nous utilisons pour créer ce conteneur

Félicitations ! Tu as maintenant un registre privé en cours d'exécution sur ta machine.

Pusher des Images vers Ton Registre Privé

Maintenant que nous avons notre registre, mettons-y quelques images !

Étape 1 : Taguer une Image

Tout d'abord, nous devons taguer une image pour l'associer à notre registre :

docker tag my-image:latest localhost:5000/my-image:latest

C'est comme mettre une étiquette spéciale sur ton livre pour montrer qu'il appartient à ta bibliothèque privée.

Étape 2 : Pusher l'Image

Maintenant, pushons cette image vers notre registre :

docker push localhost:5000/my-image:latest

Tu viens de rajouter ton premier livre à ta bibliothèque privée !

Tirer des Images de Ton Registre Privé

Pour utiliser une image de ton registre privé, tu peux la tirer comme ceci :

docker pull localhost:5000/my-image:latest

C'est aussi simple que cela ! Tu viens de retirer un livre de ta bibliothèque privée.

Sécuriser Ton Registre Privé

Maintenant, nous ne voudrions pas que n'importe qui ait accès à notre bibliothèque privée, n'est-ce pas ? Ajoutons un peu de sécurité.

Utilisation de l'Authentification de Base

Voici comment configurer l'authentification de base :

  1. Créer un fichier de mot de passe :
docker run --entrypoint htpasswd registry:2 -Bbn myuser mypassword > auth/htpasswd
  1. Lancer le registre avec l'authentification :
docker run -d \
-p 5000:5000 \
--name secure-registry \
-v "$(pwd)"/auth:/auth \
-e "REGISTRY_AUTH=htpasswd" \
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
-e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
registry:2

Maintenant, ton registre est protégé par un nom d'utilisateur et un mot de passe !

Commandes Utiles pour le Registre Docker

Voici un tableau des commandes que tu pourrais trouver utiles :

Commande Description
docker pull registry:2 Tirer l'image du registre
docker run -d -p 5000:5000 --name my-registry registry:2 Lancer un conteneur de registre
docker tag image:tag localhost:5000/image:tag Taguer une image pour le registre local
docker push localhost:5000/image:tag Pusher une image vers le registre local
docker pull localhost:5000/image:tag Tirer une image du registre local
docker search localhost:5000/ Rechercher dans le registre local

Conclusion

Et voilà, les amis ! Tu viens de configurer ton propre registre Docker privé. Souviens-toi, la pratique rend parfait. N'aie pas peur d'expérimenter et d'essayer différentes choses. Qui sait ? Tu pourrais découvrir quelque chose de nouveau et passionnant !

Au fil des ans, j'ai vu des étudiants passer de complets débutants à des maîtres de Docker. Avec de la patience et de la persévérance, tu y parviendras aussi. Continue à pusher (jeu de mots intentionnel) et bon Dockering !

Credits: Image by storyset