Microsoft has implemented Windows Server containers in partnership with Docker, which provides container management. An agreement with Docker means that the commercially supported version of the Docker engine is available at no extra cost to all licensed editions of Windows Server 2016, though it has to be installed independently through PowerShell.
Microsoft started work on implementing containers several years ago, in response to their rapid take-up on Linux, making changes to the Windows kernel to support them. The advantage of containers is that you get faster start-up and higher density than with VMs, but with many of the same advantages. Containers are ideal for applications that are formed of several microservices, since each service can be scaled independently. They are also a good fit with a highly automated approach to application delivery, enabling greater agility.
Windows Server 2016 supports two kinds of container. Standard containers are the most efficient, while Hyper-V containers use virtualisation for better isolation, and contain their own copy of the Windows kernel. Both types of container are managed in exactly the same way, though the licensing is different.
The deployment model for containers is to create a container image and then deploy it. Docker provides tools to do this, as well as a repository to store images. Repositories can be public or private, and you can host your own private repository if needed.