Aide mémoire Docker
Vous trouverez ici les commandes de base pour utiliser Docker et Docker Compose.
Sommaire
Installation
Windows
Télécharger et installer Docker Desktop : https://docs.docker.com/get-docker/
MacOS
Télécharger et installer Docker Desktop : https://docs.docker.com/get-docker/
Linux (Debian/Ubuntu)
sh
curl -sSL https://get.docker.com/ | shLes images
Recherche
sh
docker search nginxRécupérer une image
sh
docker pull nginxLancer un conteneur
- Démarre l’image ubuntu:latest
--rmsupprime automatiquement le conteneur à son arrêt.- Déclare le port
80du conteneur sur le port 3000 de votre machine. - Monte le dossier courant dans le dossier
/datadu conteneur - Note : Sur Windows,
%cd%correspond au dossier courant (équivalent de$(pwd)sous Linux/macOS). Vous pouvez aussi utiliser un chemin en dur, par exemple-v "C:\Data":/data
sh
# *nix
docker run --rm --name monConteneur -it -p 3000:80 -v ${PWD}:/data ubuntu:latest
# Windows
docker run --rm --name monConteneur -it -p 3000:80 -v %cd%:/data ubuntu:latestQuelques paramètres de la ligne de commande
| Paramètre | action |
|---|---|
| -p portLocal:portContainer | Permet de rendre visible un port dans le container sur votre machine (ex. -p 8080:80) |
| -v dossierLocal:dossierContainer | Permet d'exposer un dossier local à l'intérieur du container (ex -v ./vosSource:/data) |
Les Logs
Afficher les logs
sh
docker logs monConteneurAfficher et suivre les logs
sh
docker logs monConteneur -fStatistiques / Configuration
Statistiques du conteneur
sh
docker stats monConteneurLes processus du conteneur
sh
docker top monConteneurLe(s) port(s) exposé(s)
sh
docker port monConteneurVoir les changements dans le conteneur
sh
docker diff monConteneurGérer les images
Liste
sh
docker imagesSuppression
sh
docker rmi nginxCréer une image depuis un conteneur
Le second paramètre est le nom (et le tag) de l'image qui sera créée :
sh
docker commit nginx mon-image:ma-versionLe Dockerfile
Dockerfile
sh
FROM debian:latest
RUN apt-get update && apt-get install -y wget zip python3-pip git
# Ajout Yasb
# (--break-system-packages est nécessaire sur les Debian récentes,
# où pip refuse par défaut d'installer hors d'un environnement virtuel)
RUN pip3 install --break-system-packages https://github.com/c4software/YASB/archive/master.zip
RUN mkdir /sources/
WORKDIR /sources/Build
sh
docker build -t exemple/yasb .Nettoyage
Suppression des image(s), conteneur(s) non utilisé(s)
sh
docker system prune
docker volume pruneDocker Compose
Lancer une stack
Au premier plan :
sh
docker compose upEn arrière-plan :
sh
docker compose up -dAfficher les stacks
sh
docker compose psAfficher les logs
sh
docker compose logsAfficher et suivre les logs
sh
docker compose logs -fAfficher les logs d'un service
sh
docker compose logs -f NomDuServiceArrêter une stack
sh
docker compose downArrêter et supprimer les volumes
sh
docker compose down -v