Dans cet article, je vais vous montrer comment configurer et utiliser votre propre référentiel d'images Docker privé. Alors, commençons.
Vous devez faire installer Docker pour suivre cet article. J'ai écrit de nombreux articles sur l'installation de Docker dans de nombreuses distributions Linux différentes. Si vous avez du mal à installer Docker sur la distribution Linux souhaitée, veuillez lire ces articles sur https: // linuxhint.com.
Si vous avez besoin d'une aide supplémentaire pour installer Docker sur la distribution Linux souhaitée, demandez de l'aide sur https: //.linuxhint.com.
Topologie du réseau:
Ceci est la topologie du réseau pour expérimenter le référentiel d'images privés Docker dans cet article. Ici, j'ai 2 machines virtuelles (VM) linuxhint-docker1 et linuxhint-docker2 avec Docker installé. Ces deux machines virtuelles sont sur le même réseau. Ici, linuxhint-docker1 VM a l'adresse IP 192.168.21.203 et nom DNS docker1.linuxhint.local. Je vais installer et configurer un conteneur Docker sur le linuxhint-docker1 VM sur le port 5000 être un référentiel d'image privé Docker. Ensuite, je testerai le référentiel d'images Docker privé en poussant et en tirant des images Docker du linuxhint-docker2 Machine virtuelle. Je vais également tirer des images Docker téléchargées sur le référentiel d'images Docker privé à partir de linuxhint-docker1 VM Just pour vérifier que tout serveur Docker sur le réseau peut utiliser des images à partir du référentiel d'images Docker privé configuré. Alors, continuons.
Configuration d'un référentiel d'images Docker privé:
Dans cette section, je vais vous montrer comment configurer votre propre référentiel d'images Docker privé. Je vais utiliser le linuxhint-docker1 VM dans cette section.
Tout d'abord, créez un répertoire sur votre ordinateur où vous souhaitez enregistrer toutes les images Docker de votre référentiel d'images Docker privé.
$ mkdir -p ~ / docker / référentiel
Maintenant, créez un conteneur du enregistrement Image du Hub Docker avec la commande suivante:
$ docker conteneur run -d -p 5000: 5000 - Name Registry -V
~ / docker / registre: / var / lib / registre registre
Le enregistrement Le conteneur doit être créé. Les images docker que vous poussez vers ce référentiel d'images Docker privé seront enregistrées dans le ~ / docker / registre répertoire sur linuxhint-docker1 Machine virtuelle.
Activation de l'installation sans sécurité:
Vous devez activer le registre insécurité sur les serveurs Docker à partir desquels vous souhaitez accéder au référentiel d'image privé Docker que vous avez créé.
Dans cet article, je souhaite accéder au référentiel d'image privé Docker configuré sur la machine virtuelle linuxhint-docker1 du linuxhint-docker2 Machine virtuelle. Alors, sur le linuxhint-docker2 VM, je dois dire à Docker quels référentiels Docker insécurisés que je veux utiliser.
Pour ce faire, créez un nouveau fichier de configuration Docker / etc / docker / démon.json sur linuxhint-docker2 VM avec la commande suivante:
$ sudo nano / etc / docker / démon.json
Maintenant, saisissez les lignes suivantes comme marqué dans la capture d'écran ci-dessous.
"INSECUR-REGRISES": ["192.168.21.203: 5000 "]
Ici, j'ai ajouté l'adresse IP et le port du linuxhint-docker1 Machine virtuelle. Si vous avez du DNS configuré sur votre réseau, vous pouvez également utiliser un nom DNS ici.
J'ai configuré DNS pour linuxhint-docker1 comme suit via / etc / hôtes déposer linuxhint-docker2 Machine virtuelle.
$ sudo nano / etc / hôtes
Comme vous pouvez le voir, le nom DNS pour linuxhint-docker1 VM est docker1.linuxhint.local
Ainsi, vous pouvez l'ajouter en tant que registre non sécurisé au / etc / docker / démon.json Fichier comme suit:
"INSECUR-REGRISES": ["Docker1.linuxhint.Local: 5000 "]
J'ai ajouté à la fois l'adresse IP et le nom DNS comme registre insécurité. Donc, la finale / etc / docker / démon.json Le fichier semble comme suit:
Enfin, redémarrez le docker service sur le linuxhint-docker2 VM avec la commande suivante:
$ sudo systemctl redémarrer docker
Maintenant, vous pouvez utiliser votre propre référentiel d'images Docker privé hébergé sur linuxhint-docker1 VM de linuxhint-docker2 Machine virtuelle.
Pousser les images et tirer des images du référentiel d'images Docker privé:
Maintenant, tirez n'importe quelle image docker de Docker Hub sur VM Linuxhint-Docker2. J'irai pour le ubuntu image dans cet article.
$ Image Docker Pull Ubuntu
Comme vous pouvez le voir, le ubuntu L'image est tirée de Docker Hub.
$ Liste d'images Docker
Maintenant, afin de pousser le ubuntu Image de votre propre référentiel d'images Docker privé, vous devez taguer le ubuntu image dans un format spécifique.
Le format est,
Ip: port / image_name: tag_name
Ici, IP est l'adresse IP ou Nom DNS de la machine virtuelle où le conteneur du référentiel d'image Docker privé est en cours d'exécution.
PORT Le port est-il auquel le conteneur du référentiel d'image Docker privé est en cours d'exécution.
Image_name et TAG_NAME est le nom et la balise de l'image respectivement que vous souhaitez utiliser pour identifier l'image. TAG_NAME est facultatif.
Vous pouvez marquer le ubuntu Image utilisant l'adresse IP comme suit:
$ docker tag ubuntu 192.168.21.203: 5000 / Ubuntu
Vous pouvez également marquer l'image Ubuntu à l'aide du nom DNS comme suit:
$ docker tag ubuntu docker1.linuxhint.Local: 5000 / Ubuntu
Maintenant, poussez l'image taguée vers le référentiel d'image Docker privé comme suit:
$ Docker Image Push 192.168.21.203: 5000 / Ubuntu
Comme vous pouvez le voir, l'image est téléchargée sur le référentiel d'image Docker privé.
Maintenant, je vais supprimer toutes les images Docker en cache de mon linuxhint-docker2 Machine virtuelle.
$ Docker Image RM Ubuntu
$ Docker Image RM 192.168.21.203: 5000 / Ubuntu
Comme vous pouvez le voir, je n'ai pas d'image mise en cache dans le référentiel Docker local.
Maintenant, essayons de tirer l'image Ubuntu du référentiel d'image Docker privé.
$ Docker Image Pull 192.168.21.203: 5000 / Ubuntu
Comme vous pouvez le voir, l'image Ubuntu est tirée du référentiel d'image Docker privé.
L'image est également mise en cache dans le référentiel d'image Docker local.
Comme vous pouvez le voir, je peux également tirer les images sur le linuxhint-docker1 VM téléchargée à partir du linuxhint-docker2 Machine virtuelle.
Ainsi, nous pouvons pousser et extraire des images Docker de notre référentiel d'images Docker privé.
Si vous redémarrez votre serveur Docker où le enregistrement Le conteneur est en cours d'exécution, puis il ne démarre pas automatiquement sur le démarrage suivant. Ainsi, le référentiel d'images Docker privé ne fonctionnera pas. Mais, vous pouvez facilement démarrer le enregistrement conteneur et le faire fonctionner avec la commande suivante:
$ Docker Container Start Registry
C'est ainsi que vous configurez et utilisez votre propre référentiel d'images Docker. Merci d'avoir lu cet article.