technique:docker

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
Dernière révisionLes deux révisions suivantes
technique:docker [2023/12/30 11:15] francoisatechnique:docker [2024/03/06 15:52] francoisa
Ligne 1: Ligne 1:
-====== Virtualisation avec Docker ======+====== Conteneurisation avec Docker ======
  
 Docker est un système de virtualisation proche du sysème hote (s'il est similaire). Il permet de partager des ressources et de moins solliciter le système. Docker est un système de virtualisation proche du sysème hote (s'il est similaire). Il permet de partager des ressources et de moins solliciter le système.
Ligne 12: Ligne 12:
   * Docker dans LXC : [[https://du.nkel.dev/blog/2021-03-25_proxmox_docker/|https://du.nkel.dev/blog/2021-03-25_proxmox_docker/]]   * Docker dans LXC : [[https://du.nkel.dev/blog/2021-03-25_proxmox_docker/|https://du.nkel.dev/blog/2021-03-25_proxmox_docker/]]
   * chaine Xavki sur docker (+docker-compose pas loin) [[https://yewtu.be/playlist?list=PLn6POgpklwWq0iz59-px2z-qjDdZKEvWd|https://yewtu.be/playlist?list=PLn6POgpklwWq0iz59-px2z-qjDdZKEvWd]]   * chaine Xavki sur docker (+docker-compose pas loin) [[https://yewtu.be/playlist?list=PLn6POgpklwWq0iz59-px2z-qjDdZKEvWd|https://yewtu.be/playlist?list=PLn6POgpklwWq0iz59-px2z-qjDdZKEvWd]]
-  * serie d'articles : https://blog.microlinux.fr/formation-docker/+  * serie d'articles : [[https://blog.microlinux.fr/formation-docker/|https://blog.microlinux.fr/formation-docker/]] 
 + 
 +===== Schéma conteneur et virtualisation ===== 
 + 
 +{{.:image-29-1024x548.png?400}} 
 + 
 +=====   =====
  
 ===== Installation ===== ===== Installation =====
Ligne 33: Ligne 39:
  
 </code> </code>
 +
 +Install de docker via ansible dans le role setup_machine : [[https://gitlab.cemea.org/cemeasi/ansible-cemea/-/blob/master/roles/setup_machine/tasks/main.yml?ref_type=heads#L73-116|https://gitlab.cemea.org/cemeasi/ansible-cemea/-/blob/master/roles/setup_machine/tasks/main.yml?ref_type=heads#L73-116]]
  
 ===== Principe de fonctionnement ===== ===== Principe de fonctionnement =====
Ligne 165: Ligne 173:
   * **USER**  : Désigne quel est l'utilisateur qui lancera les prochaines instructions   * **USER**  : Désigne quel est l'utilisateur qui lancera les prochaines instructions
 RUN , CMD ou ENTRYPOINT (par défaut c'est l'utilisateur root). RUN , CMD ou ENTRYPOINT (par défaut c'est l'utilisateur root).
 +
 +Un outil pour explorer les couches d'une image Docker : [[https://github.com/wagoodman/dive|https://github.com/wagoodman/dive]]
  
 ===== Les volumes ===== ===== Les volumes =====
Ligne 238: Ligne 248:
  
 </code> </code>
 +=== Cas particulier sous PVE ===
 +
 +Penser à activer le keyctl=1 pour docker
 +
 +En cas de disque saturé, docker peut renvoyer des trucs bizarres sur des fichiers qu'il croit encore existants :
 +
 +<code>
 +systemctl stop docker && rm -Rf /var/lib/docker/image/vfs && rm -Rf /var/lib/docker/vfs && systemctl start docker
 +
 +</code>
 +
 +Et patienter avant de relancer un build...
 +
 +===== Purge =====
 +
 +Les usages mutliples de docker génèrent des fichiers liés au volume, au réseau au cache. Ce qui représente à la longue un espace conséquent dans /var/lib/docker (20 Go chez moi).
 +
 +Un nettoyage complet peut s'effectuer avec :
 +
 +<code>
 +docker system prune -a # suppresion des images, conteneur, réseau, volumes, cache...
 +
 +</code>
 +
 +Et hop : réduction à 40 Mo !
  
 ====== Docker-compose ====== ====== Docker-compose ======
  • technique/docker.txt
  • Dernière modification : 2024/04/02 15:08
  • de 127.0.0.1