Visualisation et mise en miroir Docker

Visualisation et mise en miroir Docker

Un, la visualisation

portainer

L'outil de gestion d'interface graphique Docker fournit un panneau de fond pour que nous puissions fonctionner!

docker run -d -p 8081:9000 --restart=always -v /var/run/docker.sock:/var/run/docker --privileged=true portainer/portainer
本地用这个:不然会报错Failure Cannot connect to the Docker daemon at unix:///var/run/docker.sock.
docker run -d -p 8081:9000 --restart=always -v "/var/run/docker.sock:/var/run/docker.sock" --privileged=true portainer/portainer

Visitez: http: // ip: 8081 /
Insérez la description de l'image ici
Insérez la description de l'image ici

Insérez la description de l'image ici
Insérez la description de l'image ici

Deux, image Docker

Qu'est-ce que le miroir

Mirror est une garantie logicielle légère, exécutable et indépendante, utilisée pour conditionner l'environnement d'exploitation du logiciel et les logiciels développés en fonction de l'environnement d'exploitation. Il contient tout le contenu nécessaire pour exécuter un certain logiciel, y compris le code, les bibliothèques d'exécution et les variables d'environnement. Et fichiers de configuration.

Toutes les applications et tous les environnements peuvent être directement conditionnés en tant qu'image docker et s'exécuter directement.

1. Principe de chargement de l'image Docker

UnionFs (système de fichiers Union)

Lorsque nous téléchargeons, nous voyons des couches de téléchargements qui sont ceci.

UnionFs (Union File System): l'Union File System (UnionFs) est un système de fichiers hiérarchique, léger et performant. Il prend en charge la modification du système de fichiers en une seule soumission pour superposer couche par couche et en même temps, Les répertoires sont montés sous le même système de fichiers virtuel (unissez plusieurs répertoires en un seul système de fichiers virtuel). Le système de fichiers Union est la base des images Docker. La mise en miroir peut être héritée par superposition. Sur la base de la mise en miroir de base (sans mise en miroir parente), diverses applications de mise en miroir spécifiques peuvent être effectuées.

Caractéristiques: Chargez plusieurs systèmes de fichiers en même temps, mais de l'extérieur, un seul système de fichiers peut être vu. Le chargement conjoint superposera toutes les couches de systèmes de fichiers, de sorte que le système de fichiers final contiendra tous les fichiers et répertoires sous-jacents.

Principe de chargement d'image Docker

L'image du docker est en fait composée d'un système de fichiers en couches, ce système de fichiers en couches UnionFS.
Le démarrage (système de fichiers de démarrage) comprend principalement le chargeur de démarrage et le noyau. Le chargeur de démarrage démarre et le noyau principalement. Lorsque Linux démarre, il ajoutera le système de fichiers bootfs. La couche inférieure de l'image Docker est le démarrage. Cette couche est la même que notre système Linux / Unix typique, y compris le chargeur de démarrage et le noyau. Lorsque le chargement de démarrage est terminé, tout le noyau est dans la mémoire. À ce stade, le droit d'utiliser la mémoire a été transféré des bootfs vers le noyau, et le système déchargera également les bootfs à ce moment.

rootfs (système de fichiers racine), au-dessus de bootfs. Sont inclus des répertoires et des fichiers standard tels que / dev, / proc, / bin, / etc dans un système Linux typique. Rootfs est une variété de distributions de système d'exploitation différentes, telles que Ubuntu, Centos, etc.
Insérez la description de l'image ici

2. Compréhension hiérarchique

Nous pouvons aller télécharger un miroir, faire attention à la sortie du journal du téléchargement, vous pouvez voir qu'il télécharge couche par couche.

  • Réflexion: Pourquoi l'image Docker adopte-t-elle cette structure en couches?

Le plus grand avantage, je pense, est le partage des ressources! Par exemple, si plusieurs images sont créées à partir de la même image de base, l'hôte n'a besoin de conserver qu'une seule image de base sur le disque, et une seule image de base doit être chargée dans la mémoire pour pouvoir servir tous les conteneurs., Et chaque couche du miroir peut être partagée.

entente:

Toutes les images Docker partent d'un calque d'image de base. Lors de la modification ou de l'ajout d'un nouveau contenu, un nouveau calque d'image sera créé au-dessus du calque d'image actuel.

Pour donner un exemple simple, si vous créez une nouvelle image basée sur Ubuntu Linux 16.04, il s'agit de la première couche de la nouvelle image; si vous ajoutez un package Python à l'image,
une deuxième couche d'image sera créée au-dessus de la base couche d'image.; Si vous continuez à ajouter un correctif de sécurité, la troisième couche de mise en miroir sera créée car elle contient actuellement 3 couches de mise en miroir, comme le montre la figure ci-dessous (il ne s'agit que d'un exemple très simple pour la démonstration).

Tout en ajoutant des couches de miroir supplémentaires, le miroir reste toujours une combinaison de tous les miroirs actuels. Il est très important de comprendre cela. La figure suivante montre un exemple simple, chaque couche miroir contient 3 fichiers et le miroir contient 6 fichiers de deux couches miroir.
Insérez la description de l'image ici
Insérez la description de l'image ici
Le calque du miroir dans l'image ci-dessus est légèrement différent de l'image précédente. L'objectif principal est de faciliter l'affichage des fichiers
. L'image ci-dessous montre un miroir à trois couches légèrement compliqué. De l'extérieur, le miroir entier ne contient que 6 fichiers. Ceci est dû à la couche supérieure. Le fichier 7 est une version mise à jour du fichier 5

Insérez la description de l'image ici
Dans le cas du type de langue, les fichiers de la couche miroir supérieure écrasent les fichiers de la couche miroir inférieure. Cela permet à la version mise à jour du fichier d'être ajoutée au miroir en tant que nouveau calque miroir.

Docker utilise le moteur de stockage (la nouvelle version adopte le mécanisme de cliché) pour implémenter la pile de couches miroir et garantit que les multiples couches miroir sont affichées en externe en tant que système de fichiers unifié.

Les introductions de stockage disponibles sur Linux incluent AUFS, Overlay2, Device Mapper, Btrfs et ZFS. Comme son nom l'indique, chaque moteur de stockage est basé sur son homologue sous Linux.
Système logiciel ou technologie de périphérique bloc, et chaque moteur de stockage a ses propres caractéristiques de performances uniques.

Docker prend uniquement en charge windowsfilter un moteur de stockage sur Windows, qui implémente la superposition et CoW [1] basé sur le système de fichiers NTFS.

La figure suivante montre la même mise en miroir à trois couches que l'affichage système. Toutes les couches de miroir sont empilées et fusionnées pour offrir une vue unifiée du monde extérieur.
Insérez la description de l'image ici
Insérez la description de l'image ici
Les images Docker sont en lecture seule. Lorsque le conteneur démarre, un nouveau calque inscriptible est chargé au-dessus de l'image. Ce calque est appelé le calque du conteneur et le calque d'image sous le calque du conteneur.

Docker utilise le moteur de stockage (la nouvelle version adopte le mécanisme de cliché) pour implémenter la pile de couches miroir et garantit que les multiples couches miroir sont affichées en externe en tant que système de fichiers unifié.

Insérez la description de l'image ici

3. Engagez-vous à soumettre l'image

docker commit # 提交容器成为一个新的副本
docker commit -m="提交的描述信息" -a="作者" 容器id 目标镜像名:[TAG]
docker images
docker run -it -p 8080:8080 tomcat

Copiez tous les fichiers de webapps.dist dans webapps, où -r doit être présent, ce qui signifie que le répertoire est copié de manière récursive
Insérez la description de l'image ici

docker commit -a="latteitcjz" -m="root" 当前容器的id tomcat02:1.0

Si vous souhaitez enregistrer l'état actuel du conteneur, vous pouvez le soumettre via commit et obtenir une image, tout comme nous utilisons un instantané d'une machine virtuelle.

Insérez la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/qq_43803285/article/details/114456298
conseillé
Classement