I have been looking for a good explanation on how these containers work and I just want to confirm my understanding or get some clarification on what I think I know. So windows 10 cannot run docker containers natively, whether you are using Linux containers or Windows containers you will still go through the Hyper-V and run the containers on a small VM on top of the original OS. If you are running Linux containers then the VM is an Alpine version of Linux called MobyLinuxVM.
What I am confused about is the VM for windows containers? Is it Windows Server 2016 since that is what supports native windows containers?
Also is there any information about native windows containers coming to windows 10?
a container is an application running on the local OS in a particular security envelope.
currently windows does not provide the OS support for that design, so it is hacked by installing a linux VM that DOES provide that support. (introducing some complications of course)…
Windows Server 2016 appears to be providing the native OS support for the 1st time to eliminate the VM.
I do not know the specifics of the windows container support
On Windows 10, Windows containers are run inside a highly optimized Hyper-V VM, which runs the Server kernel. This document calls this out:
Hyper-V isolation: Windows Server Containers require Hyper-V isolation on Windows 10 in order to provide developers with the same kernel version and configuration that will be used in production, more about this can be found on the About Windows container page.
As far as I know, there are no plans for running non-Hyper-V-isolated Windows containers on Windows 10. Pity, because technically it should be possible. They would probably have to create a microsoft/windows10 base image set.