Docker for Windows is often a very bad idea, as it requires Hyper-V and Windows can't support Hyper-V and whatever other emulation Virtualbox and VMWare use at the same time. This is an issue for a lot of devs who use e.g. Vagrant boxes to work in multiple projects, such as me. There is Docker Toolbox, but it's mostly a mess, old, and probably completely unsupported.
Annoyingly also the WSL has massive limitations, there are some hacks around some of the limitations but mostly it's useless for my needs.
Symlinks between the different filesystems have ended up creating some very peculiar situations, Windows drive always has 0777 perms so e.g. SSH keys won't be trusted, you can't actually launch VMs directly from WSL without some hack to make them actually use Vagrant/Docker/similar on Windows side, which has it's own issues again. No sound, no built-in X support, no 32-bit compatibility, ...
In short, there's a massive list of issues that can easily block someone from using these tools effectively, and annoyingly Microsoft's official answer to many of these complaints on their uservoice has been that they don't plan to fix them. They clearly plan to keep the WSL a 2nd class citizen in their world, with mostly an advertising value to be able to say "hey developers, you can totally work on Windows with your *nix tools".
Oh and if anyone is interested where is this UserVoice for WSL: wpdev.uservoice.com/forums/266908-...
Totally agree with you. I face all of what you mentioned about virtual machines, Docker and filesystems. Now I use Docker Toolbox with Nanobox for my developments and to be honest It kills me everytime I work with it. The best solution for me was to get two machines. One for Windows related developments and the other for Web developments. This way I don't care about support for Windows.
I agree. Please don't think that WSL is an actual replacement for a full linux distro. For advanced kernel requirements, just use a VM or a dual boot.
Interesting, I haven't run into any issues with Docker for Windows yet, but I'll now keep my eye out. It might be a good reason to install docker from the Ubuntu PPA instead of aliasing Docker for Windows. Thanks for the tip!
I'm sure with some use cases WSL has some serious roadblocks. Thankfully for web and OSS development, I haven't run into any limitations as of yet with their latest release. I definitely had lots of issues in the past, as I've been messing around with it ever since they released their first technical preview of it. It just keeps getting better, though, and their latest update closed all the gaps I had personally come across.
Have you actually checked if you can run native Docker in WSL? I would assume you cannot, as much of the "exotic" parts of the kernel are just disabled, and you can't e.g. launch normal Virtualbox VMs from it, quite likely that containers don't work either.
Also blogs.msdn.microsoft.com/commandli... etc. seem to hint at it not being an option.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.