ub-mmi-but / git-101

0 stars 43 forks source link

Docker - Pourquoi faut-il un sous système windows pour linux ? #16

Closed lorenzo-bravard closed 9 months ago

lorenzo-bravard commented 1 year ago

Afin de pouvoir lancer et utiliser Docker, il faut un sous-système Windows pour Linux, pourquoi ?

Xeone971 commented 9 months ago

Le sous-système Windows pour Linux (WSL) est une technologie développée par Microsoft qui permet d'exécuter un environnement Linux directement sur un système d'exploitation Windows. Pour comprendre pourquoi WSL est nécessaire pour Docker sur Windows, il est important de connaître quelques points clés :

  1. Différences d'architecture :

    • Windows et Linux utilisent des architectures de noyau différentes. Windows utilise le noyau NT, tandis que Linux utilise le noyau Linux. Les systèmes d'exploitation et les applications sont souvent spécifiques à l'architecture du noyau sur lequel ils sont conçus.
  2. Docker et les conteneurs :

    • Docker utilise la technologie des conteneurs pour créer des environnements isolés et légers. Les conteneurs encapsulent une application et ses dépendances, permettant ainsi de garantir une portabilité et une reproductibilité élevées.
  3. Prise en charge native de Linux par Docker :

    • Docker a été initialement développé pour Linux et repose sur des fonctionnalités spécifiques au noyau Linux, telles que les espaces de noms (namespaces) et les groupes de contrôle (cgroups). Par conséquent, Docker peut s'exécuter nativement sur un système d'exploitation Linux.
  4. WSL comme pont entre Windows et Linux :

    • Pour permettre l'exécution de Docker sur Windows, Microsoft a introduit le sous-système Windows pour Linux (WSL). WSL fournit une couche de compatibilité qui permet d'exécuter des binaires Linux directement sur Windows sans nécessiter de machine virtuelle.
  5. Docker Desktop pour Windows utilise WSL 2 :

    • Dans sa version Docker Desktop pour Windows, Docker utilise WSL 2 comme backend pour exécuter des conteneurs Linux. WSL 2 offre des performances améliorées par rapport à WSL 1 et fournit un environnement plus proche d'un véritable noyau Linux.

En résumé, pour exécuter Docker sur un système d'exploitation Windows, le sous-système Windows pour Linux est utilisé pour créer un pont permettant à Docker d'interagir avec des conteneurs Linux. Cela assure une compatibilité transparente entre les deux environnements.