Commandes Docker Essentielles: Le Guide de Référence 2026
Toutes les commandes Docker du quotidien: conteneurs, images, volumes, réseaux et Docker Compose. Une commande par bloc, prête à copier-coller.

T’as déjà perdu 5 minutes à retrouver la bonne commande Docker? Que ce soit pour gérer des conteneurs, des volumes, des réseaux ou Docker Compose, cette référence regroupe toutes les commandes Docker essentielles que j’utilise au quotidien. Une commande par bloc, prête à copier-coller.
Gestion des conteneurs
docker ps - Lister les conteneurs
Affiche les conteneurs en cours d’exécution:
docker ps
Tous les conteneurs, y compris ceux qui sont arrêtés (-a) ou uniquement leurs
IDs (-q):
docker ps -a
docker ps -q
docker run - Lancer un conteneur
La commande fondamentale de Docker. Elle crée et démarre un conteneur à partir
d’une image. Attention à ne pas la confondre avec docker start qui, lui,
redémarre un conteneur déjà existant.
Options à connaître:
-d: mode détaché (arrière-plan)-p hôte:conteneur: mappage de port--name: nom du conteneur-v hôte:conteneur: montage de volume-e VARIABLE=valeur: variable d’environnement-it: mode interactif avec terminal
Exemples courants:
docker run -d --name my-mongo -p 27017:27017 mongo
docker run -d --name my-wordpress -p 8080:80 -e WORDPRESS_DB_HOST=host.docker.internal:3306 wordpress
Entrer directement dans un conteneur au lancement:
docker run -it ubuntu bash
Démarrer, arrêter, redémarrer
docker start my-mongo
docker stop my-mongo
docker restart my-mongo
docker rm - Supprimer un conteneur
Le conteneur doit être arrêté au préalable:
docker rm my-mongo
Forcer la suppression même si le conteneur est en cours d’exécution (-f), ou
supprimer aussi les volumes associés (-v):
docker rm -f my-mongo
docker rm -v my-mongo
Entrer dans un conteneur - shell interactif
C’est probablement la commande qu’on cherche le plus souvent. Deux approches selon le contexte.
docker exec ouvre un nouveau processus dans un conteneur déjà en cours
d’exécution. C’est la méthode à privilégier:
docker exec -it my-mongo bash
Si
bashrépond “not found”, utilisersh. Les images basées sur Alpine Linux n’embarquent queshpar défaut.
docker exec -it my-mongo sh
docker attach se connecte au processus principal (PID 1) du conteneur, pas à
un nouveau shell. Utile pour voir ce que le processus affiche en live.
Attention: Ctrl+C envoie un signal au processus et peut stopper le conteneur.
Préférer Ctrl+P Ctrl+Q pour se détacher sans le tuer.
docker attach my-mongo
Exécuter une commande one-shot
docker exec my-mongo ls /data/db
docker cp - Copier des fichiers
Pour récupérer ou envoyer un fichier sans avoir à monter un volume.
Du conteneur vers l’hôte:
docker cp my-mongo:/data/db/dump.bson ./dump.bson
De l’hôte vers le conteneur:
docker cp ./config.yml my-mongo:/etc/config.yml
docker logs - Consulter les logs
docker logs my-wordpress
Suivre les logs en temps réel:
docker logs -f my-wordpress
Les 100 dernières lignes, puis suite en temps réel:
docker logs -f --tail 100 my-wordpress
docker stats - Ressources en temps réel
docker stats
Pour des conteneurs spécifiques:
docker stats my-mongo my-wordpress
Gestion des images
Lister les images locales
docker images
Télécharger une image
docker pull wordpress:latest
Supprimer une image
docker rmi my-custom-mongo:latest
Forcer la suppression:
docker rmi -f my-custom-mongo:latest
docker build - Construire une image
docker build -t my-custom-mongo:latest ./mongo
Sans cache:
docker build -t my-app:latest --no-cache .
docker login et docker push - Publier une image
Il faut être authentifié avant de pouvoir pousser une image vers un registre:
docker login
Connexion à un registre privé:
docker login registry.example.com
Tagger l’image avant le push:
docker tag my-app:latest myrepo/my-app:latest
docker push myrepo/my-app:latest
Gestion des réseaux
Par défaut, les conteneurs sont isolés. Pour qu’ils communiquent entre eux, il faut les placer sur le même réseau.
docker network ls
docker network create my-network
docker network connect my-network my-mongo
docker network disconnect my-network my-mongo
Détails et liste des conteneurs connectés:
docker network inspect my-network
Gestion des volumes
Les volumes permettent de persister les données en dehors du cycle de vie du conteneur. Sans volume, tout est perdu à la suppression du conteneur.
docker volume ls
docker volume create mongo-data
docker volume rm mongo-data
Chemin réel sur l’hôte et métadonnées:
docker volume inspect mongo-data
Monter un volume au lancement:
docker run -d --name my-mongo -v mongo-data:/data/db mongo
Docker Compose
Docker Compose orchestre plusieurs conteneurs définis dans un fichier
docker-compose.yml. Idéal pour les environnements de dev avec plusieurs
services (app, base de données, cache…).
docker-compose(ancienne syntaxe avec tiret) fonctionne toujours mais la syntaxe officielle est désormaisdocker compose(intégrée au CLI Docker).
Les commandes du quotidien
docker compose up
Mode détaché:
docker compose up -d
Reconstruction des images avant démarrage:
docker compose up -d --build
Arrête et supprime les conteneurs et réseaux:
docker compose down
Supprime aussi les volumes:
docker compose down -v
docker compose logs -f
Logs d’un service spécifique:
docker compose logs -f app
docker compose ps
docker compose restart
Entrer dans un conteneur Compose
docker compose exec app bash
docker compose exec app sh
Commande directe dans un service:
docker compose exec db psql -U postgres
Inspection et debug
docker inspect retourne un JSON complet sur un conteneur, une image, un réseau
ou un volume. Utile pour déboguer la configuration réseau ou les montages.
docker inspect my-mongo
Extraire l’IP du conteneur:
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' my-mongo
Vérifier les volumes montés:
docker inspect -f '{{json .Mounts}}' my-mongo
Nettoyage du système
Docker accumule vite des images, conteneurs et volumes inutilisés. Un nettoyage régulier évite de saturer le disque.
Supprime les conteneurs arrêtés, images orphelines et réseaux vides:
docker system prune
Inclut aussi les images non utilisées par un conteneur actif:
docker system prune -a
Sans confirmation:
docker system prune -a -f
Opérations en masse
Arrêter tous les conteneurs:
docker stop $(docker ps -aq)
Supprimer tous les conteneurs:
docker rm $(docker ps -aq)
Supprimer toutes les images:
docker rmi $(docker images -q)
Sources et références:
Catégories
Commentaires
Connexion via GitHub, gratuite et sans collecte de données par ce site.



