Maison >Opération et maintenance >Docker >La maîtrise la plus systématique de la technologie de base Docker (partage de synthèse)
Cet article vous apporte quelques questions connexes sur le fonctionnement des conteneurs de la technologie de base Docker, ainsi qu'une explication détaillée de Dockerfile, etc. J'espère qu'il vous sera utile.
Installation de l'article de référence : Installer Docker Engine sur Ubuntu | Documentation Docker
docker run:
-it interaction
-d background run
-p mappage des ports
-v disk mount
docker start
docker stop
docker ps
docker inspect
docker cp file1
Créer un entrepôt miroir privé : docker run -d -p 5000 : 5000 registre
Quatre Dockerfile détaillé. explication
DE
DE
DE
Exemple :
DEPUIS ubuntu
format :
MAINTAINER Exemple MAINTAINER RibbonRUN : Commande à exécuter lors de la construction de l'image
Format : Exécution du shell : RUN
RUN ["/etc/execfile", "arg1", "arg2"]
RUN apt-get update && apt-get install Ces deux commandes sont toujours connectées avec &&, sinon la couche de construction apt-get update sera sera mis en cache. Cela entraînera l'échec de l'installation du nouveau package
ENTRTPOINT : Configurez le conteneur pour le rendre exécutable
. Format :Exemple :
ENTRYPOINT /httpserver
CMD [ - c]
Format :
LABEL multi.label1="value1" multi.label2="value2" other="value3"
ENV : Définir les variables d'environnement
EXPOSE : Spécifiez le port pour l'interaction externe
Format : EXPOSE < port> [USER : spécifiez le nom d'utilisateur ou l'UID lors de l'exécution du conteneur, et l'exécution ultérieure utilisera également l'utilisateur spécifié.
Format:USER user:gid
USER uid:group Exemple :USER www
ARG : utilisé pour spécifier à quoi passer la construction s'exécute Variables lorsqueFormat :
ARGnsenter -t Simulation des groupes C pour contrôler les ressources CPU Simuler des groupes de contrôle Le dépassement de la limite des ressources mémoire sera un kill du MOO Définissez la taille maximale de la mémoire Remarque : Supprimez le dossier cgroup auto-créé. Vous devez utiliser cgroup-tools 7. Union FS 4. Simulez Union FS pour mieux comprendre l'effet Exécutez la commande suivante :
Vous pouvez voir l'effet de l'utilisation du montage du fichier du pilote de stockage par superposition. Une fois l'expérience terminée, pour restaurer l'environnement, vous devez d'abord démonter le répertoire fusionné, puis supprimer les quatre répertoires. Si vous supprimez d'abord les autres, rm: ne peut pas supprimer 'merged/' : un périphérique ou une ressource occupé peut apparaître. ce qui entraîne la suppression du répertoire fusionné. Euh 8. Réseau Docker Système Centos : $ APT-GET Installer Bridge-Utils 2. 3) Mode pont : utilisez --net=bridge pour spécifier le paramètre par défaut. pont de diagramme logique de réseau Docker et NAT 4) Mode conteneur : utilisez --net=container:NAME_or_ID pour spécifier. Utilisez la configuration réseau d'autres conteneurs Le diagramme du mode réseau est à peu près comme indiqué ci-dessous Générer un périphérique réseau eth0 dans ngin x docker vers eth0 Configurer l'ip passerelle Apprentissage recommandé : "Tutoriel vidéo Docker"6. : cgroups - Vous pouvez vous référer au bref livre Apprenons-en davantage sur cet article
Vous pouvez voir que l'utilisation de 200 % des ressources CPU est réduit avec succès à 1% Définir le quota CPU
Attendez que le programme soit tué par le MOO, dmesg peut voir les informations sur le kill
1. Concept :
Dans la conception de l'image Docker, la notion de calque est introduite, c'est-à-dire que chaque étape de l'opération de l'utilisateur pour créer l'image générera un calque, qui est un calque ajouté. . Mesurez rootfs (un répertoire), de sorte que les conteneurs où se trouvent l'application A et l'application B fassent référence conjointement à la même couche du système d'exploitation Ubuntu et à la même couche d'environnement Golang (en tant que couche en lecture seule), et que chacun ait sa propre couche d'application et accessible en écriture. couche. Lors du démarrage du conteneur, montez les couches pertinentes dans un répertoire via UnionFS en tant que système de fichiers racine du conteneur.
3. Pilote de stockage de conteneur
Étant donné que la version actuelle de Docker utilise le pilote de stockage overlayFS, nous utilisons overlay pour l'accrocher. Pour mener des expériences, overlayfs est implémenté via trois répertoires : le répertoire inférieur, le répertoire supérieur et le répertoire de travail. Il peut y avoir plusieurs répertoires inférieurs. Le répertoire de travail est le répertoire de base du travail. Après le montage, le contenu sera effacé et utilisé. . Pendant le processus, le contenu est invisible pour l'utilisateur. Enfin, la vue unifiée présentée à l'utilisateur une fois le montage conjoint terminé est appelée répertoire fusionné. mkdir upper lower merged work
echo "lower" > lower/in_lower.txt
echo "from lower" > lower/in_both.txt
echo "from upper" > upper/in_both.txt
echo "upper" > upper/in_upper.txt
path=$(pwd)
mount -t overlay overlay -o lowerdir=${path}/lower,upperdir=${path}/upper,workdir=${path}/work ${path}/merged
$ yum install bride-Utils
système Ubuntu :
1) Mode hôte : utilisez --net=host pour spécifier. Partagez un ensemble de réseaux avec l'hôte
2) Mode Aucun : utilisez --net=none pour spécifier. La configuration réseau doit être configurée par vous-même
3 Simulez le fonctionnement du pont réseau Docker
Create --net=none nginx.
Créer un espace de noms réseau
Créer un lien d'espace de noms réseau
Vérifiez le périphérique de pont actuellement créé
Créer une paire Veth
Effectuer une configuration réseau
Configurer le réseau B
nginx peut accéder à
Configurez nat pour que Windows puisse également accéder à
Supprimer après utilisation Préciser les règles nat
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!