DOCKER - 3 13 Solution Tests dans conteneurs

La solution aux tests dans conteneurs consiste à démarrer plusieurs distributions Linux et vérifier leur comportement. Par exemple, lancez deux conteneurs en conteneur : d'abord Ubuntu, puis CentOS. Ubuntu incluira curl version 7.35, tandis que CentOS (basé sur une version de base antérieure) peut avoir curl 7.29. Cette démonstration montre comment les distributions Linux varient même au sein de Docker.

Commencez par un conteneur Ubuntu avec le flag --rm : cet argument supprime automatiquement le conteneur dès qu'il s'arrête, évitant l'accumulation de conteneurs inutilisés. À l'intérieur, installez curl avec le gestionnaire de paquets (ex. apt-get), vérifiez la version, puis tapez exit pour quitter.

Répétez l'opération avec CentOS. Remarquez la différence de version de curl. Cela illustre que même si les conteneurs partagent le noyau Linux du kernel hôte, les distributions internes varient. Les distributions plus légères comme Alpine (4-5 MB) offrent un environnement minimal, tandis qu'Ubuntu ou CentOS sont plus complets.

L'option --rm est essentielle en production pour maintenir un système de fichiers propre. Sans elle, les conteneurs arrêtés accumulent de l'espace disque. Cela s'étend naturellement aux tests : exécutez vos suites de tests dans des conteneurs éphémères où chaque run crée un environnement isolé, puis le détruit après complétion.

En résumé

Cette leçon présente la solution pratique pour mettre en place des tests dans des conteneurs Docker. L'instructeur démontre comment lancer et gérer plusieurs conteneurs Linux simultanément, en utilisant les commandes docker run et docker containers, puis montre comment nettoyer efficacement les conteneurs avec docker rm. La démonstration couvre aussi les différences de versioning entre distributions Linux (CentOS vs Ubuntu) dans un contexte de conteneurisation.

Points clés

  • Utiliser docker run pour démarrer des conteneurs Linux et exécuter des commandes interactives
  • Gérer plusieurs conteneurs simultanément sur différents terminaux avec docker containers pour surveiller l'état
  • Nettoyer les conteneurs arrêtés avec docker rm pour maintenir un environnement propre et éviter l'accumulation
  • Comprendre les implications de versioning des outils (ex: curl 7.29 vs 7.35) selon la distribution de base choisie
  • Accéder et quitter les conteneurs correctement avec les commandes de session (exit) pour fermer les connexions

Questions fréquentes

Comment arrêter et nettoyer complètement les conteneurs Docker utilisés pour les tests ?

Utilisez docker rm pour supprimer les conteneurs arrêtés. Cette commande élimine définitivement les conteneurs, comme vérifié avec docker containers avant et après. Cela garantit qu'aucun conteneur résiduel ne reste encombrant après les tests.

Pourquoi les versions de paquets (comme curl) diffèrent-elles entre CentOS et Ubuntu ?

CentOS tend à conserver des versions plus anciennes et stables de paquets pour assurer la compatibilité long terme, tandis qu'Ubuntu offre des versions plus récentes. Cette différence affecte les outils disponibles dans vos conteneurs de test selon la distribution de base que vous choisissez.

Comment gérer plusieurs conteneurs Docker lors de tests pratiques ?

Utilisez plusieurs terminaux en parallèle pour exécuter vos conteneurs indépendamment. La commande docker containers permet de surveiller l'état de tous les conteneurs actifs, facilitant le suivi lors de tests multiples.