3 ms·
I am surprised there has not been an effort to separate docker from linux. It seems like it should be possible by providing the syscall layer in a crosss platfo
by seiferteric 4y ago
I am surprised there has not been an effort to separate docker from linux. It seems like it should be possible by providing the syscall layer in a crosss platform library somehow. I remember years ago there was a "linux userland" project where they extracted parts of the linux kernel (like networking) into userland libraries, but I don't think it exists anymore. WSL 1.0 was probably the closest thing recently.
- paulmd 4y agoThe BSD world has had this for ages in the form of "branded zones" in opensolaris/illumos and linuxulator for jails. It's too complex to thunk windows calls to linux, that is what WSL1 tried and failed at, because windows is just too different from a POSIX paradigm for that to work well. But posix-on-posix isn't really all that hard... nor is other *nix-on*nix.
- schappim 4y ago> that is what WSL1 tried and failed at What did they do differently with WSL2+?
- baq 4y agoEverything, WSL2 is a special hyperv vm. It’s a true Linux kernel with a true Linux file system. The network stack is one way integrated so you don’t have to forward any ports or configure NAT.
- qbasic_forever 4y agoIt runs a hyper-v VM with a Linux kernel.
- thangngoc89 4y agoWSL2 uses VM. So actual Ubuntu distribution under the hood
- nodja 4y agoBroadly speaking WSL1 is linux implemented in the windows kernel, think reverse wine. WSL2 is linux running on a thin VM with several bridge layers that can access windows resources (networking, files, GPU, etc.)
- seiferteric 4y agoI wonder if Windows could add more support in the kernel for better POSIX support, or maybe it's just too hard.
- baq 4y agoThey tried, it was possible but way too slow to be usable due to all the baggage that the NT kernel carries (think antivirus support).
- marwis 4y agoThere's a native Docker on Windows that runs Win32 containers.
- sigjuice 4y agoFor all practical purposes, Docker IS Linux. WSL 1.0 had serious backing from Microsoft and it wasn't even trying to be cross platform. If WSL 1.0 couldn't make it, then it is unlikely that another project with an even larger goal will emerge and be successful.