Je comprends qu'il est actuellement possible d'exécuter Ubuntu sur Windows 10 de deux manières différentes:
- Utilisation du sous-système Windows pour Linux (WSL).
- Installer docker pour Windows 10 et utiliser un conteneur avec Ubuntu.
Cependant, je n'ai pas pu trouver d'explication facile à comprendre quelles sont les différences entre elles (parler des applications), ainsi que les avantages et les inconvénients.
J'ai trouvé un article sur l'utilisation de Docker sur WSL: Ubuntu via (Windows Linux Subsystem) et Docker . Mais je parle de l'utiliser directement sur Windows 10. J'apprécierai donc toute information sur ces deux.
Réponses:
Mis à jour 2020/02/18 pour refléter les changements introduits dans WSL2
Salut! Microsoft PM travaille sur WSL et ligne de commande ici.
WSL vous permet d'exécuter des binaires Linux ELF-64 natifs et non modifiés directement sur Windows, et vous permet d'exécuter vos outils Linux préférés sur votre système d'exploitation "hôte" Windows.
WSL1 a adopté une approche consistant à ajouter une couche compatible avec les appels système Linux en haut du noyau NT, permettant aux binaires Linux de s'exécuter au-dessus de NT, partageant le même système de fichiers, réseau, liste de processus, etc. sous-jacent que le système d'exploitation hôte.
D'autre part, WSL2, qui sortira bientôt, exécute les binaires des distributions dans des conteneurs Linux, au sommet d'un véritable noyau Linux, à l'intérieur d'une machine virtuelle légère qui alloue uniquement la RAM nécessaire aux applications qu'il exécute, puis libère la RAM libérée dans le OS hôte. Cela offre une compatibilité à 100% avec Linux, et permet à vos outils Linux de fonctionner avec des performances quasi natives, et consomme le minimum de ressources nécessaires de la part de l'hôte, garantissant ainsi que votre machine fonctionne rapidement et en douceur.
Avant WSL2, il était possible d'exécuter le client Docker dans WSL1, en l'utilisant pour piloter Docker pour Windows fonctionnant sur Hyper-V sur l'hôte local ou pour gérer un serveur Docker distant. Mais on ne peut pas exécuter Docker Engine sur WSL1 pour de nombreuses raisons techniques.
Cependant, vous pouvez faire la même chose dans Docker sur WSL2, mais vous pouvez également exécuter le moteur Docker lui-même sur WSL si vous préférez. Il s'agit du chemin préféré et futur de Docker pour exécuter Docker sur le bureau Windows .
Pour en savoir plus sur WSL, consultez les vidéos et les documents ici: https://aka.ms/learnwsl
la source
C'est exact. Une chose que vous omettez de mentionner est que WSL est actuellement plutôt lent dans io même avec un ssd rapide / beaucoup de ram / 8-core xeon cpu. C'est toujours un problème au 01/2019. Je viens de faire un rayon @ DESKTOP-O0MT13B: / mnt / c / Users / rayjh $ dd if = / dev / zero of = test bs = 64k count = 16k conv = fdatasync sur mon poste de travail avec un SSD Samsung et n'a obtenu que 97,6 Mo / s.
En exécutant ubuntu LTS en métal nu, cette boîte obtiendra PLUSIEURS fois. Peu importe les problèmes sans fin lorsque vous essayez de combiner WSL avec VSCODE.
J'essuie Windows 10 d'ici et j'installe Ubuntu 18.04LTS.
la source