Cette page reprend quelques commandes Docker plutôt usuelles qui ne se trouvent pas directement dans la documentation officielle.
Doc officielle
Quelques commandes un peu plus élaborée
Supprimer les images
Supprimer toutes les images non utilisées :
docker rmi $(docker images -q)
Supprimer toutes les images sans tag :
docker rmi $(docker images | grep "<none>" | awk '{print $3}')
Démarrer un conteneur avec cette image, en mode interactif
docker run -ti hasalex/img bash
L’option -t permet de détacher le conteneur avec PQ, sans l’arrêter. On pourra le rattacher ensuite avec docker attach
.
Arrêter tous les conteneurs
docker stop $(docker ps -q)
Supprimer tous les conteneurs
En réalité, ça ne supprime que ceux qui sont arrêtés.
docker rm $(docker ps -a -q)
Cette commande peut être combinée avec celle d’arrêt pour arrêter et supprimer tous les conteneurs :
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q)
Adresse IP d’un conteneur
Pour avoir l’adresse IP du conteneur 000000 :
docker inspect --format '{{ .NetworkSettings.IPAddress }}' 000000
Ça peut se coupler avec un kill
pour envoyer un signal au process :
kill -INT $(docker inspect --format '{{ .NetworkSettings.IPAddress }}' 000000)
Ceci dit, ça peut être fait plus simplement :
docker kill --signal=INT 000000
PID du conteneur
Pour avoir l’ID du process dans le host :
docker inspect --format '{{.State.Pid}}' 000000
Docker Hub
docker login
Envoyer une image sur le hub :
docker push hasalex/img