Docker Cheatsheet 🐳

Dockerfile Docker-Compose

Concepts Clés

  • Image : ModĂšle immuable utilisĂ© pour crĂ©er un conteneur.
  • Conteneur : Instance en cours d’exĂ©cution d’une image.
  • Dockerfile : Fichier contenant les instructions pour construire une image.
  • Registry : DĂ©pĂŽt pour stocker des images Docker (ex : Docker Hub).


Commandes Générales

Afficher la version de Docker

docker --version

Lister les commandes disponibles

docker help

Images

Télécharger une image depuis Docker Hub

docker pull <nom_image>:<tag>
# Exemple : docker pull nginx:latest

Lister les images locales

docker images

Supprimer une image locale

docker rmi <image_id>

Conteneurs

Créer et démarrer un conteneur

docker run <options> <nom_image>
# Options courantes :
# -d : Démarre le conteneur en arriÚre-plan
# -p : Mappe un port local Ă  un port du conteneur (ex : -p 8080:80)
# --name : Donne un nom au conteneur
# -v : Monte un volume local (ex : -v /chemin/local:/chemin/conteneur)

Lister les conteneurs

docker ps          # Conteneurs en cours d’exĂ©cution
docker ps -a       # Tous les conteneurs (actifs et stoppés)

ArrĂȘter un conteneur

docker stop <nom_ou_id_conteneur>

Supprimer un conteneur

docker rm <nom_ou_id_conteneur>

AccĂ©der au shell d’un conteneur

docker exec -it <nom_ou_id_conteneur> /bin/bash

Volumes

Lister les volumes

docker volume ls

Créer un volume

docker volume create <nom_volume>

Supprimer un volume

docker volume rm <nom_volume>

Réseaux

Lister les réseaux

docker network ls

Créer un réseau

docker network create <nom_reseau>

Connecter un conteneur à un réseau

docker network connect <nom_reseau> <nom_ou_id_conteneur>

Docker Compose

Lancer des services définis dans un fichier docker-compose.yml

docker-compose up
# Options :
# -d : Démarrer en arriÚre-plan

ArrĂȘter les services

docker-compose down

Gestion des Ressources

Nettoyer les conteneurs, images et volumes inutilisés

docker system prune -a

VĂ©rifier l’utilisation des ressources

docker stats

Construire une Image

CrĂ©er une image Ă  partir d’un Dockerfile

docker build -t <nom_image>:<tag> <chemin_du_Dockerfile>
# Exemple : docker build -t monapp:1.0 .

Exemples Pratiques

Démarrer un serveur web Nginx

docker run -d -p 8080:80 --name nginx-server nginx:latest

Créer un conteneur avec un volume

docker run -d -v $(pwd)/data:/data --name volume-test busybox

Conseils 🚀

  1. **Privilégiez ****docker-compose** pour des configurations complexes.
  2. Utilisez des tags spécifiques (évitez latest) pour éviter des versions inattendues.
  3. **Versionnez vos ****Dockerfile** dans votre dépÎt de code pour des déploiements reproductibles.