Comment afficher l'inventaire des conteneurs Docker

DockerBeginner
Pratiquer maintenant

Introduction

Docker a révolutionné le déploiement de logiciels en fournissant des solutions de conteneurisation légères et portables. Comprendre comment visualiser et gérer l'inventaire de vos conteneurs Docker est crucial pour les développeurs et les administrateurs système. Ce tutoriel vous guidera à travers différentes méthodes pour lister, inspecter et suivre efficacement les conteneurs Docker dans différents scénarios.

Vue d'ensemble des conteneurs Docker

Qu'est-ce qu'un conteneur Docker ?

Un conteneur Docker est un package exécutable léger et autonome qui inclut tout ce dont un logiciel a besoin pour fonctionner, y compris le code, l'environnement d'exécution, les outils système, les bibliothèques et les paramètres. Les conteneurs fournissent un environnement cohérent et reproductible pour les applications sur différentes plateformes informatiques.

Caractéristiques clés des conteneurs Docker

Isolation

Les conteneurs isolent les applications du système hôte et des autres conteneurs, garantissant que chaque application s'exécute dans son propre environnement sans interférer avec les autres.

graph TD A[Système d'exploitation hôte] --> B[Conteneur 1] A --> C[Conteneur 2] A --> D[Conteneur 3]

Portabilité

Les conteneurs peuvent s'exécuter de manière cohérente sur différents environnements, du développement à la production, réduisant ainsi les problèmes de « ça marche sur ma machine ».

Efficacité

Les conteneurs sont plus efficaces en termes de ressources par rapport aux machines virtuelles traditionnelles, car ils partagent le noyau du système hôte et nécessitent moins de surcharge.

Conteneur vs Machine virtuelle

Caractéristique Conteneur Docker Machine virtuelle
Utilisation des ressources Léger Important
Temps de démarrage Quelques secondes Quelques minutes
Niveau d'isolation Niveau processus Niveau système complet
Performance Haute Plus faible

Cas d'utilisation courants

  1. Architecture microservices
  2. Intégration continue/déploiement continu (CI/CD)
  3. Développement d'applications cloud natives
  4. Environnements de développement et de tests

Flux de travail de base des conteneurs Docker

graph LR A[Image Docker] --> B[Créer un conteneur] B --> C[Démarrer le conteneur] C --> D[Exécuter l'application] D --> E[Arrêter le conteneur] E --> F[Supprimer le conteneur]

Démarrer avec LabEx

Pour apprendre concrètement et acquérir une expérience pratique avec les conteneurs Docker, LabEx fournit des environnements interactifs et des tutoriels complets pour aider les développeurs à maîtriser les technologies de conteneurisation.

Visualisation de l'inventaire des conteneurs

Commandes de base pour la liste des conteneurs Docker

Liste des conteneurs en cours d'exécution

Pour afficher les conteneurs en cours d'exécution, utilisez la commande docker ps :

docker ps

Liste de tous les conteneurs (y compris les arrêtés)

Pour afficher tous les conteneurs, y compris ceux arrêtés :

docker ps -a

Techniques avancées de liste des conteneurs

Filtrage des conteneurs

Docker fournit des options de filtrage puissantes pour afficher des conteneurs spécifiques :

## Filtrer par statut
docker ps -f "status=running"

## Filtrer par image
docker ps -f "ancestor=ubuntu:latest"

Formatage personnalisé de la sortie

Personnalisez la liste des conteneurs avec des colonnes spécifiques :

docker ps --format "table {{.ID}}\t{{.Image}}\t{{.Status}}"

Visualisation de l'inventaire des conteneurs

graph TD A[Commande Docker] --> B{Type de liste} B --> |Conteneurs en cours d'exécution| C[docker ps] B --> |Tous les conteneurs| D[docker ps -a] B --> |Conteneurs filtrés| E[docker ps -f]

Informations détaillées sur les conteneurs

Inspection d'un conteneur spécifique

Obtenir des informations détaillées sur un conteneur spécifique :

docker inspect [CONTAINER_ID]

Attributs de l'inventaire des conteneurs

Attribut Description Exemple
ID du conteneur Identificateur unique du conteneur a1b2c3d4e5f6
IMAGE Image de base utilisée ubuntu:latest
COMMANDE Commande en cours d'exécution /bin/bash
CRÉÉ Date de création du conteneur il y a 2 heures
STATUT Statut actuel du conteneur Actif depuis 45 minutes
PORTS Ports exposés 80/tcp
NOMS Nom du conteneur friendly_newton

Conseil LabEx Pro

Lors de la manipulation de l'inventaire des conteneurs Docker, LabEx recommande de pratiquer ces commandes dans un environnement contrôlé pour développer la mémoire musculaire et la compréhension.

Scénarios pratiques

  1. Surveillance du cycle de vie des conteneurs
  2. Dépannage des déploiements de conteneurs
  3. Gestion de plusieurs environnements de conteneurs
  4. Audit des ressources des conteneurs

Techniques de gestion des conteneurs

Gestion du cycle de vie des conteneurs

Démarrage des conteneurs

Démarrez un conteneur à l'aide de la commande docker start :

docker start [CONTAINER_ID]

Arrêt des conteneurs

Arrêtez un conteneur en cours d'exécution correctement :

docker stop [CONTAINER_ID]

Redémarrage des conteneurs

Redémarrez un conteneur avec une seule commande :

docker restart [CONTAINER_ID]

Flux de travail du cycle de vie des conteneurs

graph TD A[Créer un conteneur] --> B[Démarrer le conteneur] B --> C{Statut du conteneur} C --> |En cours d'exécution| D[Exécuter des commandes] C --> |Arrêté| E[Redémarrer/Supprimer] D --> F[Arrêter le conteneur] F --> G[Supprimer le conteneur]

Gestion avancée des conteneurs

Exécution interactive des conteneurs

Lancez un shell interactif à l'intérieur d'un conteneur :

docker run -it ubuntu:latest /bin/bash

Exécution de commandes dans des conteneurs en cours d'exécution

Exécutez des commandes dans un conteneur actif :

docker exec [CONTAINER_ID] command

Gestion des ressources des conteneurs

Limitation des ressources des conteneurs

Contrôlez l'utilisation du processeur et de la mémoire :

docker run --cpus=2 --memory=1g ubuntu:latest

Surveillance de l'utilisation des ressources

Suivez les performances du conteneur :

docker stats [CONTAINER_ID]

Techniques de gestion des conteneurs

Technique Commande Description
Créer docker create Préparer le conteneur sans le démarrer
Exécuter docker run Créer et démarrer le conteneur
Arrêter docker stop Arrêter correctement le conteneur
Supprimer docker rm Supprimer le conteneur
Suspendre docker pause Geler temporairement le conteneur

Réseaux des conteneurs

Mappage des ports

Exposer les ports du conteneur à l'hôte :

docker run -p 8080:80 nginx:latest

Création de réseaux personnalisés

Créer des réseaux de conteneurs isolés :

docker network create mynetwork
docker run --network=mynetwork nginx:latest

Sauvegarde et migration des conteneurs

Création d'une capture instantanée du conteneur

Générer une image à partir d'un conteneur en cours d'exécution :

docker commit [CONTAINER_ID] myimage:backup

Exportation du conteneur

Enregistrer l'état du conteneur pour la migration :

docker export [CONTAINER_ID] > container.tar

Recommandation LabEx

Pour une gestion complète des conteneurs Docker, LabEx suggère de pratiquer ces techniques dans un environnement simulé et contrôlé pour développer des compétences pratiques.

Bonnes pratiques

  1. Utilisez toujours des limites de ressources.
  2. Mettez en place une surveillance appropriée des conteneurs.
  3. Nettoyez régulièrement les conteneurs inutilisés.
  4. Utilisez le contrôle de version pour les configurations des conteneurs.
  5. Mettez en œuvre des analyses de sécurité.

Résumé

Maîtriser la gestion de l'inventaire des conteneurs Docker est essentiel pour maintenir un environnement conteneurisé robuste et efficace. En utilisant les commandes de la ligne de commande Docker et les techniques de filtrage avancées, vous pouvez obtenir une vue d'ensemble complète de vos conteneurs en cours d'exécution et arrêtés, ce qui permet une meilleure gestion des ressources et une surveillance du système.