Docker Bootcamp – Terminologie et exemples de conteneurs

Bienvenue dans ma série de blogs Docker Bootcamp. La semaine dernière, j’ai couvert les antécédents de Docker et décrit l’installation de Docker . Dans cet article, je passerai en revue quelques termes courants utilisés pour parler de Docker et des conteneurs. Je vais également montrer quelques-unes des commandes de base nécessaires pour vous permettre d'utiliser Docker ainsi que quelques-uns des indicateurs facultatifs pour les commandes (il y en a d'autres que vous apprendrez plus tard). Je vais vous donner quelques exemples que vous pouvez essayer de vous faire une idée de l'utilisation des commandes par vous-même.
- Compatibilité des applications – Docker ne peut exécuter que des applications qui sont nativement prises en charge par le système hôte.
- Container – (prison AKA) – Contient tous les composants nécessaires pour exécuter une application de manière isolée. Limites de l'impact que le logiciel peut avoir sur le système hôte. Facilement démontable. Créé à partir d'une image. Exécute la même chose d'un environnement à un autre.
- États du conteneur – Un conteneur peut être dans l'un des quatre états suivants: exécution, pause, sortie, redémarrage.
- Conteneurisation – Utilisation d'un processus au niveau du système d'exploitation isolement. Faible surcharge car un système d'exploitation invité n'est pas requis.
- Daemon – Un processus qui s'exécute en arrière-plan.
- Dockerfile – Un script pour créer une image. Peut être distribué via un registre, un contrôle de code source ou un transfert manuel de fichiers.
- Système hôte – Le système exécutant le démon Docker.
- Image – Un fichier qui comprend tous les éléments nécessaires pour exécuter une application en tant que conteneur ie – code, fichiers de configuration, variables d'environnement, couches et bibliothèques. Peut être réutilisé pour créer plusieurs conteneurs. Peut être utilisé par différents systèmes d'exploitation et ordinateurs et fonctionne de la même manière dans tous les environnements. Ne change pas une fois construit et distribué. Peut être distribué via un registre, un contrôle de code source (probablement plus facile à utiliser le fichier docker dans ce cas) ou un transfert de fichier manuel.
- Isolation – Séparation d'un processus de toutes les ressources sauf lorsque cela est explicitement autorisé.
- Image Linux – Une image construite pour s'exécuter sur un hôte Linux (ou Windows utilisant WSL).
- Orchestration – (AKA Container Orchestration) – Des outils pour automatiser la maintenance des conteneurs ie Kubernetes ou Swarm. Remplacez les conteneurs défectueux, redémarrez les conteneurs, mettez à l'échelle les conteneurs dans le cloud.
- Registry – Une infrastructure pour héberger des référentiels et distribuer des images.
- Repository – Un ensemble d'images nommé pour un utilisateur d'un registre.
- State: Exited – Un conteneur nouvellement créé avec la commande create. Un conteneur en cours d'exécution qui est arrêté.
- État: En pause – Un conteneur en cours d'exécution qui est en pause.
- État: Redémarrage – Un conteneur en cours d'exécution qui est en cours de redémarrage.
- État: Running – Un conteneur nouvellement créé avec la commande run. Un conteneur arrêté qui est démarré. Un conteneur suspendu qui est repris.
- Tag – Un moyen d'identifier une image dans un référentiel ie – v1, v2, latest (un synonyme de v2), localconfig, webconfig. Permet aux utilisateurs d'extraire une version spécifique d'une image. Une image peut avoir plusieurs balises pour aider l'utilisateur à trouver l'image correcte.
- Virtualisation – Utilisation de l'isolation de processus au niveau matériel (c.-à-d. Machine virtuelle). Frais généraux élevés car un système d'exploitation invité complet est requis.
- Image Windows – Une image conçue pour fonctionner sur un hôte Windows.
- WSL – Sous-système Windows pour Linux. Un noyau Linux complet fonctionnant à l'intérieur de Windows qui permet aux conteneurs Linux de s'exécuter sans émulation.
- attach – Attache une entrée et une sortie locales à un conteneur en cours d'exécution
- container prune – Supprime tous les conteneurs arrêtés
- create – Créer un nouveau conteneur dans un état arrêté
- exec – Exécuter une commande dans un conteneur en cours d'exécution
- help – Liste des commandes docker disponibles
- help
– Liste de la syntaxe et utiliser les détails de la commande donnée - images – Afficher les images disponibles localement
- info – Afficher les informations du docker à l'échelle du système
- inspect – Afficher toutes les métadonnées sur une image ou un conteneur dans Format JSON
- login – Se connecter à un registre
- logs – Voir les logs d'un conteneur
- logout – Se déconnecter d'un registre
- port – List port mappages pour un conteneur
- ps – Liste des conteneurs
- pull – Télécharger une image à partir d'un registre
- renommer – Renommer un conteneur
- restart – Redémarrer un conteneur en cours d'exécution
- rm – Supprimer un conteneur
- rmi – Supprimer un image
- run – Créer et démarrer un nouveau conteneur
- search – Rechercher une image dans le registre
- start – Démarrer un conteneur arrêté
- stats – Afficher statistiques d'utilisation des ressources pour un conteneur
- stop – Arrête un conteneur en cours d'exécution
- top – Liste des processus en cours d'exécution à l'intérieur d'un conteneur
Vous pouvez trouver une liste complète des commandes et tous les indicateurs disponibles sur https://docs.docker.com/engine/reference/commandline/docker/ .
attach
docker attach [options] container
–no-stdin | O | Ne pas attacher stdin |
create
docker create [options] image [command] [args…]
Sorties: ContainerID
–cidfile | O | Ecrivez l'ID de conteneur du conteneur nouvellement créé dans un nom de fichier connu | |
–interactive | -i | O | Autoriser l'entrée standard dans le container |
–name | O | Donnez au conteneur un nom convivial | |
–publish | -p | O | Mapper le port du conteneur vers l'hôte |
–Read-only | O | Créer un système de fichiers en lecture seule | |
–rm | O | Supprimer automatiquement le conteneur à sa sortie | |
–tty | -t | O | Attribuer un terminal virtuel au conteneur |
image | R | Le nom de l'image à exécuter. | |
commande | O | La commande à exécuter à l'intérieur de l'image | |
args | O | Les arguments de la commande |
- Nom du conteneur
- Si le paramètre name n'est pas fourni, docker créera le conteneur avec un nom au format x_y (ie boring_pike).
- Si le conteneur nommé existe déjà, vous obtiendrez un nom déjà utilisé.
- ID du conteneur
- Nombre de 1024 bits hexadécimal codé en 64 caractères
- Souvent raccourci aux 12 premiers caractères
- Peut être utilisé pour référencer un conteneur au lieu du nom
- Y compris toutes les commandes qui prennent un nom de conteneur comme argument
- Utile pour les scripts et l'automatisation
- Interactif / ATS
- Requis au moment de la création si vous souhaitez interagir avec le conteneur de quelque manière que ce soit, même si vous commencez à être détaché.
exec
docker exec [options] container command [args…]
–detach | – d | O | Exécuter la commande en arrière-plan |
–env | -e | O | Définir les variables d'environnement |
–interactive | -i | O | Gardez stdin ouvert même s'il n'est pas connecté |
–tty | -t | O | Joindre un terminal |
–user | -u | O | Nom d'utilisateur de l'uid pour exécuter la commande sous |
–workdir | -w | O | Répertoire de travail dans le conteneur |
login
docker login [options] [server]
–username | -u | R | Nom d'utilisateur | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
–password | -p | R | Password | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
–password-stdin | O | Lire le mot de passe de stdin | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
server | O | Nom du serveur du registre ry (default index.docker.io/v1)[19659091[/19659091]) Si vous ne fournissez pas d'indicateur de mot de passe, il le demandera de manière interactive logs
port
ps
pull
rename
restart
rm
rmi
run
start
stats
stop
top
Intéragir avec Docker
Busybox Test
Test Nginx
Comprendre? Dans mon prochain article, je vais aborder le sujet du stockage persistant. Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire ci-dessous.
Source link |