Ceci est une ancienne révision du document !
Docker
Utilisation basique
Pour lancer un shell dans un conteneur avec Debian Buster :
docker run -it debian:buster
Une fois dans le conteneur, pour utiliser efficacement apt :
DEBIAN_FRONTEND=noninteractive
apt update
L'option -p 8000:8000 (hôte:conteneur) permet de partager le port 8000. Du point de vue du conteneur, la machine hôte a l'IP 172.17.0.1 (Docker ajoute une interface réseau à la machine hôte).
L'option --rm permet de supprimer le conteneur lorsqu'il est arrêté.
Support de l'UTF-8
apt install locales dpkg-reconfigure locales # choisir en_US.UTF-8 puis C.UTF-8
Arrêter / Stopper tous les containers
docker stop $(docker ps -a -q) docker rm $(docker ps -a -q)
Rentrer dans un container déjà lancé
Partager un dossier
Utiliser l'option -v, par exemple :
docker run -it --rm -v $PWD:/foo -w /foo debian
L'option -w permet de se place tout de suite dans le dossier indiqué une fois le conteneur lancé.
Copie de fichiers entre containers démarrés et hôte
docker cp 77e7:/etc/php/8.1/fpm/php.ini .
Lancer une application graphique
docker run -it --rm -e "DISPLAY=$DISPLAY" -v "$HOME/.Xauthority:/root/.Xauthority:ro" debian:latest
Changer l'emplacement des données de Docker
Créer le fichier /etc/docker/daemon.json :
{
"data-root": "/media/linux/docker/"
}
Redémarrer le service:
sudo service docker restart