Rozumiem, że obecnie można uruchomić Ubuntu na Windows 10 na dwa różne sposoby:
- Korzystanie z podsystemu Windows dla systemu Linux (WSL).
- Instalowanie dokera dla systemu Windows 10 i używanie kontenera z Ubuntu.
Nie mogłem jednak znaleźć łatwego do zrozumienia wyjaśnienia różnic między nimi (mówiąc o aplikacjach), a także zalet i wad.
Znalazłem post mówiący o użyciu dokera na WSL: Ubuntu przez (Windows Linux Subsystem) i Docker . Ale mówię o używaniu go bezpośrednio w systemie Windows 10. Będę wdzięczny za wszelkie informacje na temat tych dwóch.
Odpowiedzi:
Zaktualizowano 2020/02/18, aby odzwierciedlić zmiany wprowadzone w WSL2
Cześć! Microsoft PM działający na WSL i wierszu poleceń tutaj.
WSL pozwala na uruchamianie natywnych, niezmodyfikowanych plików binarnych Linux ELF-64 bezpośrednio w systemie Windows, a także umożliwia uruchamianie ulubionych narzędzi systemu Linux na „hoście” systemu operacyjnego Windows.
WSL1 podjął podejście polegające na dodaniu warstwy zgodnej z systemem Linux syscall w górnej części jądra NT, umożliwiając uruchamianie binariów Linux na szczycie NT, współużytkując ten sam podstawowy system plików, sieć, listę procesów itp., Co system hosta.
Z drugiej strony niedługo wypuszczony WSL2 uruchamia pliki binarne dystrybucji w kontenerach Linux, na prawdziwym jądrze Linuksa, w lekkiej maszynie wirtualnej, która przydziela tylko pamięć RAM potrzebną do uruchomionych aplikacji, a następnie zwalnia zwolnioną pamięć RAM z powrotem do system operacyjny hosta. Zapewnia to 100% kompatybilność z Linuksem i pozwala twoim narzędziom Linux działać z prawie natywną wydajnością i zużywa minimalne zasoby niezbędne z hosta, zapewniając, że twoja maszyna działa szybko i płynnie.
Przed wersją WSL2 można było uruchomić klienta Docker w WSL1, używając go do sterowania Dockerem dla Windows działającym na Hyper-V na hoście lokalnym lub do zarządzania zdalnym serwerem Docker. Ale nie można uruchomić Docker Engine na WSL1 z wielu powodów technicznych.
Jednak możesz zrobić to samo w Docker na WSL2, ale możesz również uruchomić sam silnik Docker na szczycie WSL, jeśli wolisz. Jest to preferowana i przyszła ścieżka Dockera do uruchamiania Dockera na pulpicie Windows .
Aby dowiedzieć się więcej o WSL, przejrzyj filmy i dokumenty tutaj: https://aka.ms/learnwsl
źródło
To jest poprawne. Jedną z rzeczy, o których nie wspominasz, jest to, że WSL jest obecnie raczej powolny w systemie io nawet z szybkim ssd / dużo RAM / 8-rdzeniowym procesorem xeon. Jest to nadal problem w 01/2019. Właśnie zrobiłem ray @ DESKTOP-O0MT13B: / mnt / c / Users / rayjh $ dd if = / dev / zero of = test bs = 64k count = 16k conv = fdatasync na mojej stacji roboczej z dyskiem Samsung SSD i mam tylko 97,6 MB / s.
Uruchamiając gołe metalowe ubuntu LTS, to urządzenie otrzyma KILKA razy tyle. Nie wspominając o niekończących się problemach, gdy próbujesz połączyć WSL z VSCODE.
Usuwam stąd system Windows 10 i instaluję system Ubuntu 18.04LTS.
źródło