paramètres communs aux objets:
(docker run –help)
Si l'image n'existe pas en local, docker le télécharge depusi le hub docker
Toutes les images disponibles: https://hub.docker.com/
Affiche le retours console du contenaire, un ctrl+c quite ET stop le contenaire
docker run image_docker
Mode détaché en background, pas de retours
docker run -d image_docker
Pour entrer dans le shell du contenaire, il faudra le lancer en mode interactif dans un pseudo TTY (voir plus loin).
Connecte le shell du contenaire dans le shell local, pour sortir SANS stopper le contenaire par ctrl+p suivi de ctrl+q
docker run -it image_docker /bin/sh
docker run -d -p 8080:80 image_docker
docker image list
docker ps -a
il faut connaitre son ID ou name
docker container list
puis
docker container stop [ID_contenair|Name_Contenaire]
ou
docker stop $(sudo docker ps -a -q)
docker rm -f ID_Contenaire
ou
docker rm -f $(sudo docker ps -a -q)
si le contenaire tourne on doit d'abord l'éteindre ou utiliser l'option “ -f ”
ou pour tous les contenaires éteints
docker container prune
il faut connaitre le nom du contenaire :
sudo docker container list
puis
docker exec -it nom_contenair sh
https://docs.docker.com/reference/cli/docker/container/exec/
https://blog.microlinux.fr/formation-docker-10-volumes/
docker run -d -p 8080:80 --volume volume_local:/point_de_montage_dans_contenaire:ro image_docker
Si le volume est un chemin absolu vers un répertoire existant (~/volume_local ou /home/volume_local) , avec cette méthode on ne peut pas gérer les volumes avec “docker volume”. Si le volume n'existe pas il est créé automatiquement (voir ci-après).
docker run -d -p 8080:80 --name nom_contenaire --mount src=volume_local,dst=/point_de_montage_dans_contenaire:ro image_docker
Les volumes sont par défaut dans:
sudo ls -l /var/lib/docker/volumes/
sudo docker volume create Test1Vol
si on veut un stockage hors /var/lib/docker/volumes/
docker volume create --driver local --opt type=none --opt device=/chemin/vers/mon/dossier --opt o=bind nom_volume
docker volume list
Meme si le contenaire qui utlisait le volume est supprimé, le volume reste dans docker. Pour le supprimer
docker volume rm nom_volume
IP par conteneur:
https://www.baeldung.com/ops/docker-assign-static-ip-container
https://docs.docker.com/network/network-tutorial-standalone/
les volumes pour un conteneur:
https://blog.microlinux.fr/formation-docker-10-volumes/
à tester
https://www.cheatsheet.fr/2024/04/07/heberger-plusieurs-sites-dans-des-containers-docker/