Toutes les commandes Docker essentielles en un coup d'œil. Images, conteneurs, volumes, réseaux, Compose et nettoyage.
Images · Conteneurs · Inspection & Logs · Exécuter dans un conteneur · Volumes · Réseaux · Docker Compose · Nettoyage
Une image, c'est un modèle prêt à l'emploi. On la télécharge depuis Docker Hub (le "store" de Docker) ou on la construit soi-même avec un Dockerfile.
| Commande | Description |
|---|---|
docker pull <image> |
Télécharger une image depuis Docker Hub |
docker images |
Lister toutes les images locales |
docker rmi <image> |
Supprimer une image |
docker build -t <nom> . |
Construire une image depuis un Dockerfile |
docker tag <image> <nouveau_nom> |
Renommer / taguer une image |
Un conteneur est une image en cours d'exécution. On peut le démarrer, l'arrêter, le supprimer — comme allumer/éteindre une VM. L'option -d (detached) le lance en arrière-plan.
| Commande | Description |
|---|---|
docker run <image> |
Lancer un conteneur |
docker run -d <image> |
Lancer en arrière-plan (detached) |
docker run -it <image> bash |
Lancer en mode interactif |
docker run --name <nom> <image> |
Donner un nom au conteneur |
docker run -p 8080:80 <image> |
Mapper un port (hôte:conteneur) |
docker run -e VAR=valeur <image> |
Passer une variable d'environnement |
docker run -v /host:/container <image> |
Monter un volume |
docker run --restart unless-stopped <image> |
Redémarrage automatique |
docker ps |
Lister les conteneurs actifs |
docker ps -a |
Lister tous les conteneurs (y compris arrêtés) |
docker stop <conteneur> |
Arrêter un conteneur |
docker start <conteneur> |
Relancer un conteneur arrêté |
docker restart <conteneur> |
Redémarrer un conteneur |
docker rm <conteneur> |
Supprimer un conteneur |
Pour comprendre ce qui se passe dans un conteneur : logs affiche les messages de l'application, inspect donne la config technique complète, et stats montre les ressources utilisées en temps réel.
| Commande | Description |
|---|---|
docker logs <conteneur> |
Voir les logs du conteneur |
docker logs -f <conteneur> |
Suivre les logs en temps réel |
docker inspect <conteneur> |
Détails complets du conteneur (JSON) |
docker stats |
Ressources en temps réel (CPU, RAM, réseau…) |
docker top <conteneur> |
Voir les processus dans un conteneur |
docker exec permet d'entrer dans un conteneur qui tourne déjà — un peu comme se connecter en SSH à un serveur. Très utile pour débugger ou explorer les fichiers à l'intérieur.
| Commande | Description |
|---|---|
docker exec -it <conteneur> bash |
Ouvrir un terminal dans le conteneur |
docker exec <conteneur> <commande> |
Exécuter une commande dans le conteneur |
docker cp <fichier> <conteneur>:/chemin |
Copier un fichier dans le conteneur |
docker cp <conteneur>:/chemin <fichier> |
Copier un fichier depuis le conteneur |
Par défaut, les données d'un conteneur sont perdues quand on le supprime. Un volume permet de sauvegarder les données en dehors du conteneur (base de données, fichiers uploadés, config…).
| Commande | Description |
|---|---|
docker volume create <nom> |
Créer un volume |
docker volume ls |
Lister les volumes |
docker volume inspect <nom> |
Détails d'un volume |
docker volume rm <nom> |
Supprimer un volume |
docker run -v <volume>:/data <image> |
Utiliser un volume nommé |
Docker crée des réseaux virtuels pour isoler les conteneurs. Ceux sur le même réseau peuvent se parler par leur nom (ex : ping wordpress depuis un autre conteneur du même réseau).
| Commande | Description |
|---|---|
docker network create <nom> |
Créer un réseau |
docker network ls |
Lister les réseaux |
docker network inspect <nom> |
Détails d'un réseau |
docker network connect <réseau> <conteneur> |
Connecter un conteneur à un réseau |
docker network disconnect <réseau> <conteneur> |
Déconnecter un conteneur d'un réseau |
docker run --network <réseau> <image> |
Lancer un conteneur sur un réseau spécifique |
Docker Compose permet de décrire toute une stack (plusieurs conteneurs, réseaux, volumes) dans un seul fichier docker-compose.yml. Une seule commande pour tout lancer ou tout arrêter.
| Commande | Description |
|---|---|
docker compose up |
Lancer les services définis dans docker-compose.yml |
docker compose up -d |
Lancer en arrière-plan |
docker compose down |
Arrêter et supprimer les conteneurs |
docker compose down -v |
Arrêter et supprimer les conteneurs + volumes |
docker compose ps |
Lister les conteneurs Compose |
docker compose logs |
Voir les logs de tous les services |
docker compose logs -f <service> |
Suivre les logs d'un service en temps réel |
docker compose build |
Construire les images depuis les Dockerfiles |
docker compose pull |
Télécharger les dernières images |
docker compose restart |
Redémarrer les services |
docker compose exec <service> bash |
Ouvrir un shell dans un service |
docker compose config |
Vérifier / afficher la configuration YAML |
docker compose up --scale <service>=3 |
Lancer plusieurs instances d'un service |
Docker accumule des fichiers avec le temps (images téléchargées, conteneurs arrêtés, volumes orphelins). Ces commandes permettent de faire le ménage et récupérer de l'espace disque.
docker system prune -a supprime toutes les images non utilisées. À utiliser avec prudence en production !
| Commande | Description |
|---|---|
docker system prune |
Supprimer conteneurs arrêtés, réseaux inutilisés, images sans tag |
docker system prune -a |
Tout nettoyer (y compris images non utilisées) |
docker volume prune |
Supprimer les volumes orphelins |
docker image prune |
Supprimer les images inutilisées |
alias dk='docker' et alias dkc='docker compose' dans votre
~/.bashrc pour taper vos commandes encore plus vite !