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édentesRévision précédente
Prochaine révision
Révision précédente
docker [Le 23/09/2025, 11:14] – [Docker Compose] ortograf krodelabestioledocker [Le 20/04/2026, 10:44] (Version actuelle) – [Voir aussi] ajout lien vers article sur podman de Stephane Robert bcag2
Ligne 2: Ligne 2:
  
 {{ :docker_container_engine_logo.png?200|}} {{ :docker_container_engine_logo.png?200|}}
-====== docker ======+====== Docker ======
  
-**[[wpfr>Docker]]** est un logiciel libre (sous [[wpfr>Licence_Apache|licence Apache 2.0]]) à mi-chemin entre la virtualisation applicative et l'automatisation. Il permet de manipuler des conteneurs de logiciels. Il isole les processus les uns des autres pour créer une [[wpfr>Conteneur_(virtualisation)|virtualisation de haut niveau]].\\+**[[wpfr>Docker_(logiciel)|Docker]]** est un logiciel libre (sous [[wpfr>Licence_Apache|licence Apache 2.0]]) à mi-chemin entre la virtualisation applicative et l'automatisation. Il permet de manipuler des conteneurs de logiciels. Il isole les processus les uns des autres pour créer une [[wpfr>Conteneur_(virtualisation)|virtualisation de haut niveau]].\\
 Contrairement aux systèmes de [[:virtualisation]], **Docker** n'embarque pas tout le système d'exploitation invité (tel que le [[:kernel|noyau]]) mais ne s'occupe que de la partie haut niveau. Il utilise le noyau de l'hôte et ne fait fonctionner que le strict nécessaire sur les invités. Ceci allège grandement les images invitées et les ressources nécessaires à leur fonctionnement tout en assouplissant la distribution de celles-ci. Contrairement aux systèmes de [[:virtualisation]], **Docker** n'embarque pas tout le système d'exploitation invité (tel que le [[:kernel|noyau]]) mais ne s'occupe que de la partie haut niveau. Il utilise le noyau de l'hôte et ne fait fonctionner que le strict nécessaire sur les invités. Ceci allège grandement les images invitées et les ressources nécessaires à leur fonctionnement tout en assouplissant la distribution de celles-ci.
  
Ligne 13: Ligne 13:
 <note tip>Pour mettre en place un serveur [[:LAMP]] grâce à Docker, n'hésitez pas à consulter [[:docker_lamp|ce tutoriel]].</note> <note tip>Pour mettre en place un serveur [[:LAMP]] grâce à Docker, n'hésitez pas à consulter [[:docker_lamp|ce tutoriel]].</note>
  
-<note warning>Docker n'est [[https://github.com/Microsoft/WSL/issues/575|pas compatible]] avec [[:wsl|Windows Subsystem for Linux 1]]. Pour l'utiliser vous devez convertir votre //subsystem// en version 2 (''wsl.exe %%--%%set-version ubuntu 2'').</note>+<note warning
 +Depuis Ubuntu [[:questing|Questing 25.10]], le paquet ''[[apt>docker]]'' des [[#Dépôts APT Ubuntu|dépôts Ubuntu officiels]] n'installe plus **[[wpfr>Docker_(logiciel)|Docker]]**, mais **[[wpfr>Podman]]**, qui est une alternative similaire (à quelques détails près), et apporte une souplesse qui permet une meilleurs sécurité. 
 + 
 +La transition peut se faire de manière relativement transparente. La différence principale est qu'il n'y a plus de processus (//daemon//) principal centralisé. 
 +</note> 
 + 
 +<note important>Docker n'est [[https://github.com/Microsoft/WSL/issues/575|pas compatible]] avec [[:wsl|Windows Subsystem for Linux 1]]. Pour l'utiliser vous devez convertir votre //subsystem// en version 2 (''wsl.exe %%--%%set-version ubuntu 2'').</note>
  
 ===== Fonctionnement ===== ===== Fonctionnement =====
Ligne 290: Ligne 296:
 </file> </file>
  
-  * MAINTAINER : nom et mail de mainteneur du conteneur +  * ''MAINTAINER'' : nom et mail de mainteneur du conteneur 
-  * FROM : image de base (ubuntu, debian) +  * ''FROM'' : image de base (ubuntu, debian) 
-  * VOLUME : Point de montage +  * ''VOLUME'' : Point de montage 
-  * RUN : commande à exécuter pour installer le conteneur. +  * ''RUN'' : commande à exécuter pour installer le conteneur. 
-  * ENTRYPOINT : commande qui s’exécute au démarrage du conteneur (une seule sera exécutée). +  * ''ENTRYPOINT'' : commande qui s’exécute au démarrage du conteneur (une seule sera exécutée). 
-  * CMD : commande qui s’exécute au démarrage du conteneur. +  * ''CMD'' : commande qui s’exécute au démarrage du conteneur. 
-  * ADD : Copier un fichier du répertoire courant dans le filesystem du conteneur. +  * ''ADD'' : Copier un fichier du répertoire courant dans le filesystem du conteneur. 
-  * USER : utilisateur qui exécute les commandes dans le conteneur. +  * ''USER'' : utilisateur qui exécute les commandes dans le conteneur. 
-  * EXPOSE : Port(s) à exposer à l’exterieur.+  * ''EXPOSE'' : Port(s) à exposer à l’exterieur.
  
 Construire un conteneur : Construire un conteneur :
Ligne 327: Ligne 333:
 <note important>Cette technique ci-dessus n'est pas forcément pertinente/persistante. Préférer ce qui suit : </note> <note important>Cette technique ci-dessus n'est pas forcément pertinente/persistante. Préférer ce qui suit : </note>
   * Créer un conteneur avec la time Zone configurée. Pour cela utiliser la variable d'environnement "TZ" (voir [[https://serverfault.com/questions/683605/docker-container-time-timezone-will-not-reflect-changes|ce post]] ) <code>   * Créer un conteneur avec la time Zone configurée. Pour cela utiliser la variable d'environnement "TZ" (voir [[https://serverfault.com/questions/683605/docker-container-time-timezone-will-not-reflect-changes|ce post]] ) <code>
-docker run -e TZ=Europe/Amsterdam debian:jessie date+docker run -e TZ=Europe/Paris debian:jessie date
 </code> </code>
-  * Dans le Dockerfile : ajouter la ligne <code>ENV TZ Europe/Amsterdam </code> ou encore : <code>ENV TZ=America/Los_Angeles +  * Dans le Dockerfile : ajouter la ligne <file>ENV TZ Europe/Paris</file> ou encore : <file>ENV TZ=Europe/Paris 
-RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone </code>+RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone</file> 
 +  * ou avec [[#Docker Compose]] dans le fichier ''[[https://docs.docker.com/compose/intro/compose-application-model/#illustrative-example|docker-compose.yml]]'' :<file> 
 +  environment: 
 +    - TZ=Europe/Paris</file>
  
 ===== Désinstallation ===== ===== Désinstallation =====
Ligne 344: Ligne 353:
   * [[https://xataz.developpez.com/tutoriels/utilisation-docker/|Tutoriel sur developpez.com (mis à jour en mai 2017)]]   * [[https://xataz.developpez.com/tutoriels/utilisation-docker/|Tutoriel sur developpez.com (mis à jour en mai 2017)]]
   * [[https://www.it-connect.fr/debuter-avec-docker-et-les-containers-sous-debian-8/|Docker et les containers sous Debian 8 (oct 2014)]]   * [[https://www.it-connect.fr/debuter-avec-docker-et-les-containers-sous-debian-8/|Docker et les containers sous Debian 8 (oct 2014)]]
-  * [[https://podman.io/|Podman]], une alternative à Docker+  * [[https://podman.io/|Podman]], une alternative à Docker, [[https://blog.stephane-robert.info/docs/conteneurs/moteurs-conteneurs/podman/|article sur Podman de Stéphane Robert]] (FR)
  
 ---- ----
  
-//Contributeurs : [[:utilisateurs:Chacmool]], [[:utilisateurs:chamblard]], [[:utilisateurs:krodelabestiole]]//+//Contributeurs : [[:utilisateurs:Chacmool]], [[:utilisateurs:chamblard]], [[:utilisateurs:krodelabestiole]]...//