Docker

De cyberesprit.fr
Aller à : navigation, rechercher

Administration Docker

Lister les images :

docker images

Rechercher des images dans les dépôts :

docker search ubuntu

Télécharger une image depuis un dépôt :

docker pull ubuntu:latest

Créer et démarrer un container :

docker run -p 22 -p 80 -t -i ubuntu

Cette commande fait ceci :

docker create -p 22 -p 80 -t -i ubuntu
docker start 805abb939679

Démarrer un container :

docker start 805abb939679

Arrêter un container :

docker stop 805abb939679

Créer une nouvelle image (avec un Dockerfile dans le même dossier) :

docker build -t cyberesprit/supervisord .

Voir les journaux d'un conteneur :

docker logs 805abb939679

Lister les containers :

docker ps -l
docker ps -a

Supprimer un container :

docker rm 805abb939679

Supprimer une image :

docker rmi 5ed66b9b4c24

Attacher un container à la console :

docker attach 805abb939679

Éxécuter une commande dans un container, par exemple « /bin/bash » :

docker exec -ti 805abb939679 /bin/bash

Récupérer la configuration (adresse ip par exemple) d'un container :

docker inspect 805abb939679

Copier des données d'un container à l'hôte (même éteint) :

docker cp container-id:/path/to/data /path/on/host

Pour déplacer le dossier de Docker contenant les images, les conteneurs, la configuration, etc .., il faut copier ou déplacer « /var/lib/docker » dans le dossier final, et créer un lien symbolique « /var/lib/docker » vers ce dossier final.

Pour effacer des fichiers gênants (comme des pid ou lock), attention à la recréation on perd l'entrypoint/cmd :

docker export sharp_shockley > /tmp/sharp_shockley.tar
mkdir /tmp/sharp_shockley
cd /tmp/sharp_shockley/
tar xvf sharp_shockley.tar
rm run/httpd/httpd.pid
rm sharp_shockley.tar
tar -c . | sudo docker import - nom_image

Trouver et supprimer les images fantômes <none> (Attention, vérifier qu'il n'y a pas de conteneur actif qui en ont besoin) :

docker images --no-trunc | grep none | awk '{print $3}' | xargs docker rmi