Instaluję Docker dla Windows (CE) na Windows 10 i pierwszy ekran pyta mnie:
[] Użyj kontenerów Windows zamiast kontenerów Linux (można to zmienić po instalacji)
To wydaje się ważna decyzja, ale dokumentacja Docker , FAQ i samouczek kontenera Windows nie zawierają informacji o tym, dlaczego mogę wybrać jedną z nich.
Przydatny byłby obiektywny przegląd konsekwencji tego wyboru:
- Czy jedna opcja będzie szybsza od drugiej?
- Czy decyzja wpływa na wykorzystanie zasobów systemowych (pamięci RAM, procesora)?
- Czy mogę uruchomić te same obrazy na obu typach?
- Czy jedno jest bezpieczniejsze od drugiego?
Wszelkie inne rozróżnienia, które mogłyby pomóc mi dojść do wniosku, byłyby bardzo mile widziane.
docker
windows-10
Duncan Jones
źródło
źródło
Odpowiedzi:
Musisz użyć hosta systemu Windows dla kontenerów systemu Windows, ale możesz użyć hosta systemu Linux lub hosta systemu Windows dla kontenerów systemu Linux. Od kwietnia 2018 r. Możesz nawet uruchomić oba jednocześnie .
Nie, w czym szybciej?
Windows zużywa więcej zasobów niż Linux - Windows Nano jest tak mały, jak to tylko możliwe
Nie. Możesz uruchamiać aplikacje .NET w kontenerach mono, ale nie możesz uruchomić kontenera systemu Windows na hoście Linux i odwrotnie - to nie to samo co wirtualizacja
Znowu - w czym bezpieczniej? Nie. Oba działają w natywnym Dockerze, więc nie ma to nic wspólnego z hyper-v vs VMware, a bardziej jak Linux vs Windows, więc wszystko zależy od tego, co zamierzasz uruchomić .net, python, java, ruby itp.
źródło