docker:accueil

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
docker:accueil [2021/04/04 17:01] – modification externe 127.0.0.1docker:accueil [2025/10/30 21:58] (Version actuelle) – add link phsw
Ligne 1: Ligne 1:
 ====== Docker ====== ====== Docker ======
 +
 +
 +  * [[https://jakub-m.github.io/2022/09/10/docker.html|Running Docker images without Docker]]
 +  * [[https://docker-curriculum.com|Docker for beginners]]
 +  * [[https://blog.stephane-robert.info/docs/conteneurs/moteurs-conteneurs/docker-network/|Comprendre le réseau Docker]]
 +  * [[https://tbhaxor.com/docker-containers-security/#__do_not_save__|Docker Containers Security]]
 +  * [[https://danlevy.net/docker-security-tips-for-self-hosting/|Essential Docker Security Tips for Self-Hosting]]
 +
 +
 +==== Utilisation basique ====
 +
 +Pour lancer un shell dans un conteneur avec Debian Buster :
 +<code bash>
 +docker run -it debian:buster
 +</code>
 +
 +Une fois dans le conteneur, pour utiliser efficacement ''apt'' :
 +<code bash>
 +DEBIAN_FRONTEND=noninteractive
 +apt update
 +</code>
 +
 +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 ===
 +
 +<code bash>
 +apt install locales
 +dpkg-reconfigure locales # choisir en_US.UTF-8 puis C.UTF-8
 +</code>
 +
  
 ==== Arrêter / Stopper tous les containers ==== ==== Arrêter / Stopper tous les containers ====
Ligne 9: Ligne 43:
 docker rm $(docker ps -a -q) docker rm $(docker ps -a -q)
 </code> </code>
 +
 +
 +==== Rentrer dans un container déjà lancé ====
 +
 +[[https://stackoverflow.com/questions/30172605/how-do-i-get-into-a-docker-containers-shell|Source]]
 +
 +Récupérer le nom du container :
 +<code bash>
 +docker ps
 +</code>
 +Puis :
 +<code bash>
 +docker exec -ti $name /bin/bash
 +</code>
 +
 +
 +==== Partager un dossier ====
 +
 +Utiliser l'option ''-v'', par exemple :
 +<code bash>
 +docker run -it --rm -v $PWD:/foo -w /foo debian
 +</code>
 +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 ====
 +
 +[[https://stackoverflow.com/questions/22907231/how-to-copy-files-from-host-to-docker-container|Source]]
 +
 +<code bash>
 +docker cp 77e7:/etc/php/8.1/fpm/php.ini .
 +</code>
 +
 +
 +==== Lancer une application graphique ====
 +
 +[[https://stackoverflow.com/questions/65642916/running-a-qt-gui-in-a-docker-container|Source]]
 +
 +<code bash>
 +docker run -it --rm -e "DISPLAY=$DISPLAY" -v "$HOME/.Xauthority:/root/.Xauthority:ro" debian:latest
 +</code> 
 +
 +
 +==== Libérer de l'espace disque occupé par Docker ====
 +
 +<code bash>
 +sudo docker system prune -a --volumes
 +</code>
 +
 +
 +==== Changer l'emplacement des données de Docker ====
 +
 +  * https://docs.docker.com/engine/reference/commandline/dockerd/
 +  * [[https://stackoverflow.com/questions/36014554/how-to-change-the-default-location-for-docker-create-volume-command]]
 +
 +Créer le fichier ''/etc/docker/daemon.json'' :
 +<code json>
 +{
 +    "data-root": "/media/linux/docker/"
 +}
 +</code>
 +Redémarrer le service:
 +<code bash>
 +sudo service docker restart
 +</code>
 +
 +
 +==== Fonctionnement de Docker ====
 +
 +  * [[https://muhammadraza.me/2024/building-container-runtime-python/|Understanding Docker Internals: Building a Container Runtime in Python]]
  • docker/accueil.1617548516.txt.gz
  • Dernière modification : 2021/04/04 17:01
  • de 127.0.0.1