‫Nous allons maintenant démarrer le registre actuel. Nous en parlons depuis un
‫moment, alors faisons-en réellement quelque chose.
‫Le registre est en réalité un serveur HTTPS comme nous en avons parlé.
‫Il fonctionne sur le port 5000 par défaut.
‫Ce que nous allons faire, c'est commencer. Ensuite, nous allons renommer une image existante que nous avons, que
‫nous avons en fait reçue de Docker Hub. C'est ainsi que vous changez l'emplacement du registre, lequel va être
‫utilisé à la place, si vous allez réellement renommer des images existantes. Ensuite, nous allons supprimer
‫cette image de notre cache local et la
‫retirer du registre après l'avoir insérée. Ensuite, nous allons réellement arrêter et recréer le registre pour montrer comment
‫vous pouvez modifier le stockage.
‫Dans notre cas, nous allons simplement utiliser
‫le stockage local, mais nous allons parler de nombreuses options de stockage. Je veux faire une note rapide sur
‫le registre et sur la manière dont il préfère TLS. Dès qu’il est prêt, Docker ne communiquera avec
‫aucun registre à moins d’exécuter la sécurité HTTPS appropriée.
‫Droite?
‫Il veut s'assurer que votre authentification est cryptée et que tout ce qui a été transmis
‫est approuvé.
‫Nous appelons donc cela Sécurisé par défaut.
‫Droite? Vous avez probablement entendu cela auparavant. En fait, il ne parlera pas avec le registre que
‫nous allons créer à moins que nous ne le créions sur les hôtes locaux, ce que nous sommes.
‫C'est comme ça que nous allons le faire, c'est juste tourner sur notre hôte local.
‫Donc c'est facile.
‫Nous n’avons pas à nous soucier de TLS, nous nous contentons de le tester immédiatement car, comme
‫la plupart des sites Web, le registre n’est pas fourni avec TLS intégré.
‫Vous devez généralement créer votre propre certificat.
‫Mais, si vous allez faire des certificats auto-signés pour votre registre ou peut-être que vous allez le faire à distance sans
‫TLS, ce que je ne vous encourage
‫pas à faire, mais au cas où vous en auriez besoin, il y a en fait un manque de sécurité-
‫option de registre que vous devez activer dans le moteur.
‫Nous n'allons pas couvrir cela ici.
‫Mais juste pour savoir que dans la production, si vous devez un jour signer un
‫certificat auto-signé, vous devez juste l'activer. Vous obtiendrez une bonne erreur de Docker, elle dira: "Je ne peux pas parler à ce registre parce
‫que je ne lui fais pas confiance. "genre de chose,
‫si vous essayez de faire ça.
‫Aujourd'hui, nous allons simplement l'exécuter avec HTTP standard sur le port 5000.
‫Retour à ma machine locale et faire un conteneur docker exécuter -d -p 5000, et il est par défaut à
‫5000 dans le
‫conteneur, et je vais simplement appeler cela le registre. Ensuite, nous utilisons un registre d'images.
‫Si je fais un conteneur docker ls, vous verrez qu'il est en cours d'exécution. Pour l'utiliser, nous utilisons en
‫fait des balises.
‫Si vous vous en souvenez, avec nos images avec Docker Hub, nous devions les mettre au format nom du compte et nom du
‫référentiel, mais cela s’applique à Docker Hub. Pour tout autre
‫registre, nous devons également l'indiquer avec l'hôte.
‫Je vais en fait tirer quelque chose qui s'appelle hello-world, parce que c'est joli et petit. Lorsque nous l'exécutons, il génère simplement un texte
‫qui valide le fonctionnement de ce conteneur, ce qui est
‫parfait pour ce joli petit exemple. Ce que je dois faire pour le transférer dans mon registre local est que je dois lui
‫attribuer une autre balise indiquant à mon démon où il doit l’envoyer.
‫Nous utilisons le tag Docker, puis l'image que j'ai besoin de taguer, puis l'endroit où je veux le taguer.
‫Donc 127. 0. 0. 1: 5000,
‫je dois mettre le port dedans
‫et ensuite bonjour le monde.
‫Cela équivaudrait à créer ma propre image officielle à la racine de mon registre local.
‫Si je fais une image docker ls, vous voyez que hello-world a deux balises et que c'est le même identifiant d'image parce que tout ce que j'ai fait est de
‫lui donner une autre balise.
‫Mais alors si je fais un push de docker, il ne poussera pas réellement vers le hub de Docker, il verra qu'il y a une adresse IP
‫et un port là-bas et poussera vers le haut de mon registre local.
‫Supprimons maintenant nos copies locales afin que l’image de docker supprime et l’image de docker.
‫D'ACCORD.
‫Oh. Droite.
‫Impossible de supprimer l'image car nous devons d'abord nous débarrasser de ce conteneur.
‫Donc docker container rm, et c’est le conteneur qui a lancé hello-world,
‫je peux maintenant supprimer l’image.
‫Nous y voilà.
‫OK, maintenant si je fais une image de menu fixe ls, je suis sûr de ne pas l'avoir, non? Je n'ai pas cette image.
‫Maintenant, je peux faire un docker à partir de ce même endroit.
‫Nous y voilà.
‫Je descends cette image.
‫La première chose à faire, si vous souhaitez utiliser votre propre registre pour vos propres
‫raisons, consiste tout d'abord à utiliser un volume pour stocker les données.
‫Dans ce cas, nous pourrions supprimer le registre et utiliser un volume pour faire la même chose.
‫Si j'étais dans ce répertoire où je suis registry-sample-1, je pourrais créer un registre de suppression du conteneur
‫docker, un registre docker
‫container rm.
‫D'accord.
‫Nous avons donc nettoyé notre conteneur de registre. Ramenons le conteneur docker exécuté sur le port
‫5000, appelez-le à nouveau registre. Cette fois, nous allons lui donner un volume, et nous allons
‫utiliser l’astuce pwd pour donner notre répertoire
‫de travail actuel, puis je vais mettre un sous-répertoire de données de registre. Cela doit aller au registre var lib.
‫La dernière partie est que nous utilisons l'image de registre.
‫C'est techniquement un nouveau registre avec une nouvelle base de données.
‫Si vous teniez compte des données du registre, il n'y aurait rien encore, mais si je reprends l'image que nous venons
‫de faire et que je la rétablis, vous constaterez que le monde
‫du salut est toujours là.
‫Si je fais un docker à nouveau, il devrait le repousser immédiatement.
‫Maintenant, si je fais tout et le répertoire de données du registre, vous verrez quelques informations. Je viens de faire une commande d’arbre qui peut ne pas être sur votre système d’exploitation,
‫mais vous n’avez
‫pas besoin de courir si vous ne voulez pas. C'est un outil Linux commun qui me
‫montrerait tous les différents chemins ici. Vous verrez que cela décompose les
‫données en données, ou blobs, qui sont les binaires réels contenus dans l'image, puis les métadonnées qui
‫l'entourent, qui sont le manifeste, et les balises, etc. Tout est dans leurs propres répertoires SHA parce que
‫vous avez plusieurs couches ici.
‫Ce n'est pas vraiment utile pour nous de creuser, mais c'est intéressant à voir.
‫Alors voilà.
‫Ce sont les bases de l’exécution d’un registre sur votre ordinateur local.
‫Ensuite, nous devrons le sécuriser avec du TLS, puis activer une authentification.
‫D'accord. C'est la base de la gestion d'un registre Docker.
‫Voici les commandes principales que nous avons exécutées dans cette conférence. Vous voudrez peut-être faire une pause ici si vous
‫souhaitez en écrire un ou vous assurer que le vôtre est correct.
‫Maintenant que vous en avez terminé avec cette leçon, n'oubliez pas de nettoyer pour pouvoir commencer avec une nouvelle
‫page au prochain cours.