Hacker News new | past | comments | ask | show | jobs | submit login
Docker for Windows 17.11 with Windows 10 Fall Creators Update (docker.com)
28 points by sz4kerto on Nov 25, 2017 | hide | past | favorite | 20 comments



Docker for Windows already runs Linux containers. This is an update: "The setup for running Linux containers with LCOW is a lot simpler than the previous architecture where a Hyper-V Linux VM runs a Linux Docker daemon, along with all your containers. With LCOW, the Docker daemon runs as a Windows process (same as when running Docker Windows containers), and every time you start a Linux container Docker launches a minimal Hyper-V hypervisor running a VM with a Linux kernel, runc and the container processes running on top."


This is a major update as now the Docker daemon runs as a Windows process, not as a Linux process. One VM/container is also a huge change. Before this, you had to manage a single VM that runs all the containers, allocate memory and CPU for that whole VM, assign Hyper-V virtual switch(es) to that VM.

Basically this intends to bring Linux containers to Windows Server.


Doesn't the new setup with container / VM require much more memory, as now you have to allocate it for every kernel?


any idea what host windows OS are supported? I suppose only those with hyper-v.


I’m looking for the same answer. I expect you are right, as the MS article linked does talk about some Hyper-V capabilities leveraged by LinuxKit (even though MobyLinux is no longer running as a HyperV VM).


It is running as a Hyper-V VM. HV containers don't share the kernel with the host if they're running Linux; they are actual lightweight VMs.


Exactly, you can't emulate another OS without a hypervisor.


Windows 10 or Server 2016 1709 or higher.


I was expecting LCOW to not need Hyper-V at all and to use Windows' WSL.

I thought it was the whole point behind WSL -- to beta-test Linux containers support without the need for virtualization.


Would be possible right when Windows kernel would support cgroups, network namespaces and chroot (2nd and 3rd are not implemented at all and probably will never be).


The point here I think is that "nobody" seriously believes in container isolation purely through namespacing. It's sufficient for some scenarios, but we can expect the hypercontainer-based OCI runtime to gain much more momentum. It's only logical that Microsoft will skip namespacing entirely and go straight to a unified Windows/Linux container runtime based on their Hyper-V investment. Hyper-V isolation has been the only production-approved runtime for Windows containers already, and it's how Azure Container Instances works under the hood (that's my understanding at least).


Hyper-V virtualization requirements are removed with this update. It does rely on Hyper-V isolation, which appears to have more in common with Linux namespaces than virtualization.

Virtualization isn’t completely off the table. The article mentions a minimal, LinuxKit-based hypervisor. I may be off, but I’m imagining something more akin to what’s happening on macOS via HyperKit.


I don't think you're right. Linux containers will keep running inside VMs (How else could they run? WSL isn't there yet and probably never will be.)


Not quite. It doesn’t use the existing Hyper-V management stack, but it does use the Hyper-V hypervisor and (trimmed down) virtual device stack.


Will the Hyper-V features need to be installed or will it be installed automatically?

I'm just curious because sometimes it messes with your video card driver.


You’ll have to enable Hyper-V. If you’re having video card issues with Hyper-V + Windows 10 you can email me and we can try to figure out what’s going on.


So I have 2 questions still:

- On a windows server can I run a Linux container?

- On Windows server can I run a Windows container and a Linux container side by side?


From my read, the side-by-side feature is a soon but not quite yet (on Win10 or Server 2016). Looks like the groundwork is prepared though there are some features that aren’t fully implemented yet.


You can run linux containers on Windows Server 1709. But only with Docker EE, because community edition is not available without GUI.

I think we will be able run them together in the future.


The article says that the his will be available in future versions.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: