DOCKER - 11 Solution exercice v 2
Voici la solution complète pas à pas. Commençons par lancer MySQL avec une variable d'environnement pour le mot de passe root :
docker run -d --name mysql-server -e MYSQL_ROOT_PASSWORD=mypassword mysql
Vérifiez que le conteneur est lancé et consultez les logs pour voir le mot de passe généré (s'il y en a un) :
docker logs mysql-server
Lancez maintenant Apache (httpd) sur le port 8080 :
docker run -d --name apache-server -p 8080:80 httpd
Et finalement, lancez Nginx en tant que proxy sur le port 80 (le port standard) :
docker run -d --name nginx-proxy -p 80:80 nginx
Vérifiez que tous les trois conteneurs sont en exécution :
docker ps
Vous devriez voir trois lignes avec les noms corrects et les ports mappés visibles. Maintenant, arrêtez tous les conteneurs :
docker stop mysql-server apache-server nginx-proxy
Vérifiez qu'il n'y a plus de conteneurs actifs :
docker ps
Supprimez ensuite tous les conteneurs arrêtés :
docker rm mysql-server apache-server nginx-proxy
Vérifiez le nettoyage final avec docker ps -a pour confirmer qu'ils ont tous été supprimés. L'exercice démontre comment configurer, vérifier et nettoyer plusieurs conteneurs interagissant potentiellement ensemble.
Inspectez les détails du conteneur PostgreSQL :
docker inspect my-db
Cela vous affiche la configuration complète : adresse IP, variables d'environnement, volumes montés, etc. Consultez les logs :
docker logs my-db
Arrêtez ensuite le conteneur Nginx, puis redémarrez-le :
docker stop my-nginx
docker start my-nginx
Enfin, supprimez les conteneurs (ils doivent être arrêtés au préalable) :
docker stop my-nginx my-db
docker rm my-nginx my-db
Cette solution vous fait pratiquer le cycle de vie complet : création, exécution, inspection, arrêt, redémarrage et suppression des conteneurs.
En résumé
Cette vidéo présente la solution à l'exercice sur la gestion de plusieurs conteneurs Docker. Le tuteur lance trois conteneurs distincts (MySQL, une application web et un proxy), vérifie leur fonctionnement avec les commandes Docker appropriées, puis démontre comment les nettoyer complètement en arrêtant et supprimant les conteneurs.
Points clés
- Lancer plusieurs conteneurs Docker avec docker run en spécifiant les variables d'environnement et les mappages de ports requis
- Vérifier le statut et les logs des conteneurs avec docker ps et docker logs pour confirmer qu'ils s'exécutent correctement
- Arrêter les conteneurs avec docker stop avant de les nettoyer complètement avec docker rm
Questions fréquentes
Comment vérifier que tous les conteneurs lancés fonctionnent correctement?
Utilisez docker ps pour voir tous les conteneurs en cours d'exécution avec leurs ports mappés et leurs noms, puis docker logs <conteneur> pour consulter les journaux détaillés de chaque conteneur.
Quelle est la bonne façon de nettoyer les conteneurs après les tests?
D'abord arrêtez tous les conteneurs avec docker stop <nom>, puis supprimez-les avec docker rm <nom>. Vous pouvez ensuite vérifier que tout est nettoyé avec docker ps.
Peut-on avoir des variations dans les commandes de lancement?
Oui, tant que vous obtenez le résultat souhaité (les trois conteneurs exécutant les trois images différentes avec les paramètres corrects), les variations mineures dans les commandes sont acceptables.