Référence Docker
Certains paramètres fréquents des commandes Docker
Voici une fiche de référence Docker couvrant les commandes les plus importantes et les concepts, de l’installation à l’exécution des conteneurs et au nettoyage :

Ce guide fait partie de Outils de développement : Le guide complet des workflows de développement modernes.
Installation
Pour un guide complet sur l’installation de Docker sur Ubuntu — comparant le dépôt APT officiel, docker.io, Snap, le mode sans privilèges root (rootless) et la configuration du plugin Compose — consultez Installer Docker sur Ubuntu.
Après l’installation, ajoutez votre utilisateur au groupe docker si vous devez exécuter des commandes sans sudo :
sudo usermod -aG docker $USER
newgrp docker
docker run hello-world
Le guide d’installation couvre également le compromis de sécurité lié à l’appartenance au groupe docker et les alternatives rootless.
Commandes Docker générales
Version et informations système
docker version # Affiche les versions de Docker CLI et du daemon
docker system info # Liste les données de votre environnement Docker
docker help # Affiche l'index d'aide
docker <commande> --help # Affiche les informations d'aide pour une commande spécifique
Connexion et déconnexion
docker login # Se connecter à Docker Hub
docker logout # Se déconnecter de Docker Hub
Gestion des images
Lister les images
docker images # Lister toutes les images
docker images -a # Lister toutes les images, y compris les images intermédiaires
Tirer des images (Pull)
docker pull <nom-image:version> # Télécharger une image depuis Docker Hub
Construire des images
docker build -t <nom-image> . # Construire une image à partir du Dockerfile du répertoire courant
docker build -f <chemin-Dockerfile> -t <nom-image> . # Construire une image à partir d'un Dockerfile spécifique
docker build --build-arg foo=bar . # Construire une image avec des arguments de construction
docker build --pull . # Tirer les versions mises à jour des images référencées dans les instructions FROM
docker build --quiet . # Construire une image sans émettre de sortie
Étiqueter et pousser des images
docker tag <nom-image-locale> <nom-utilisateur>/<nom-image-préférentiel>
docker push <nom-utilisateur>/<nom-image-préférentiel>
Supprimer des images
docker rmi <nom-image> # Supprimer une image spécifique
docker image prune # Supprimer les images inutilisées
docker image prune -a # Supprimer toutes les images inutilisées
Supprimer les images orphelines (dangling)
docker rmi $(docker images --filter "dangling=true" -q --no-trunc)
Désétiqueter une image
docker rmi repository/nom-image:tag
Gestion des conteneurs
Exécuter des conteneurs
docker run -itd --name <nom-conteneur> <nom-image> # Exécuter un conteneur en mode détaché
docker run -it -p <port-hôte>:<port-docker> <nom-image> # Exécuter un conteneur avec mappage de ports
docker run -it --name <nom-conteneur> <nom-image> # Exécuter un conteneur de manière interactive
Lister les conteneurs
docker ps # Lister les conteneurs en cours d'exécution
docker ps -a # Lister tous les conteneurs
docker ps -s # Lister les conteneurs en cours d'exécution avec l'utilisation CPU et mémoire
Démarrer, arrêter et redémarrer des conteneurs
docker start <nom-conteneur> # Démarrer un conteneur arrêté
docker stop <nom-conteneur> # Arrêter un conteneur en cours d'exécution
docker restart <nom-conteneur> # Redémarrer un conteneur
Supprimer des conteneurs
docker rm <nom-conteneur> # Supprimer un conteneur arrêté
docker rm -f <nom-conteneur> # Supprimer un conteneur par force
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) # Supprimer tous les conteneurs
Supprimer tous les conteneurs arrêtés
docker container prune
Se connecter aux conteneurs
docker attach <nom-conteneur> # Se connecter à un conteneur en cours d'exécution
docker exec -it <nom-conteneur> bash # Exécuter une commande dans un conteneur en cours d'exécution de manière interactive
Inspecter les conteneurs
docker inspect <nom-conteneur> # Inspecter un conteneur
docker logs <nom-conteneur> # Voir les journaux d'un conteneur
docker port <nom-conteneur> # Afficher les mappages de ports d'un conteneur
Gestion des réseaux
docker network ls # Lister tous les réseaux
docker network create <nom-réseau> # Créer un nouveau réseau
docker network rm <nom-réseau> # Supprimer un réseau
Gestion des volumes
docker volume ls # Lister tous les volumes
docker volume create <nom-volume> # Créer un nouveau volume
docker volume rm <nom-volume> # Supprimer un volume
docker run -v <chemin-hôte>:<chemin-conteneur> <nom-image> # Monter un volume
Docker Compose
Pour les stacks multi-conteneurs et les commandes Compose quotidiennes, consultez la Fiche de référence Docker Compose. Lorsqu’un projet Compose doit démarrer au démarrage et survivre aux redémarrages sur un serveur Linux, Exécuter Docker Compose comme un service Linux avec systemd couvre les fichiers d’unité et les habitudes opérationnelles.
Commandes de base
docker-compose up # Démarrer les services définis dans docker-compose.yml
docker-compose up -d # Démarrer les services en mode détaché
docker-compose down # Arrêter et supprimer les services
docker-compose ps # Lister les services en cours d'exécution
docker-compose logs # Voir les journaux des services
docker-compose start # Démarrer les services
docker-compose stop # Arrêter les services
docker-compose pause # Mettre en pause les services
docker-compose unpause # Reprendre les services
Commandes Dockerfile
Construire une image depuis un Dockerfile
docker build -t <nom-image> <chemin-Dockerfile> # Construire une image depuis un Dockerfile
Exemple de Dockerfile
FROM <image-de-base>
RUN <commande>
COPY <source> <destination>
EXPOSE <port>
CMD ["<commande>", "<argument>"]
Sécurité et Secrets
Secrets Docker
docker secret create <nom-secret> <fichier> # Créer un secret
docker secret ls # Lister tous les secrets
docker secret rm <nom-secret> # Supprimer un secret
Sécurité Docker
- Utilisez les secrets Docker pour gérer centralement les données sensibles et les transmettre en toute sécurité aux conteneurs.
- Les secrets sont chiffrés pendant le transit et au repos dans un swarm Docker.
Nettoyage
Supprimer les ressources inutilisées
docker system prune # Supprimer les données inutilisées (images, conteneurs, réseaux, volumes)
docker image prune # Supprimer les images inutilisées
docker container prune # Supprimer les conteneurs inutilisés
docker network prune # Supprimer les réseaux inutilisés
docker volume prune # Supprimer les volumes inutilisés
Supprimer les images non étiquetées
Parfois, après une grande compilation réussie, on obtient un résultat comme celui-ci de la commande docker images :

Pour supprimer ces images avec des balises
docker rmi $(docker images --filter “dangling=true” -q --no-trunc)
Ceci est ancien et incompatible. Le paramètre dangling=true est obsolète. Utilisez :
docker system prune
Il vous demandera :
ATTENTION ! Cela supprimera :
- tous les conteneurs arrêtés
- tous les volumes non utilisés par au moins un conteneur
- tous les réseaux non utilisés par au moins un conteneur
- toutes les images orphelines
Vous pouvez décider de répondre Oui à cet avertissement…
Cette fiche de référence couvre les commandes et concepts essentiels nécessaires pour gérer les conteneurs, images, réseaux, volumes Docker et plus encore. Pour une analyse plus approfondie, consultez les guides et tutoriels détaillés disponibles en ligne.