Cloud Native 9 min read

Understanding Windows Containers: Runtimes, Images, and Mixed Docker Swarm Deployments

The article explains Windows Server 2016 native container support, the two container runtimes (Windows Server Container and Hyper‑V Container), available Windows container images, how Docker Swarm can orchestrate mixed Windows and Linux nodes, and licensing considerations for production use.

DevOps
DevOps
DevOps
Understanding Windows Containers: Runtimes, Images, and Mixed Docker Swarm Deployments

Microsoft officially announced Windows Server 2016 at the 2016 Ignite conference, introducing a production‑ready container service that brings native Windows containers into the spotlight, distinct from Docker for Windows running Linux VMs.

1. Windows Container provides two runtimes: Windows Server Container or Hyper‑V Container

Windows offers two container runtime models. The Windows Server Container shares the host kernel, making it lightweight and fast; processes started inside the container run on the host and can be seen with Task Manager or PowerShell’s Get-Process . Hyper‑V Container launches a minimal virtual machine on the host, giving each container its own kernel for stronger isolation while still delivering good performance. Windows Server 2016 lets you choose either runtime, whereas Windows 10 only supports Hyper‑V Containers.

Regardless of the runtime, standard Docker CLI commands work and container image formats are compatible with Linux containers, allowing distribution via Docker Hub and reuse of existing Linux container knowledge.

2. Windows Container can only run Windows applications (at least for now)

You cannot run Linux processes inside a Windows container, nor Windows processes inside a Linux container, because the underlying OS is Windows for both runtime models. Consequently, many Linux images on Docker Hub are unusable in Windows containers.

Microsoft provides Windows container images on Docker Hub, such as microsoft/windowservercore (a full‑size server image supporting MSI installers, .NET Framework, etc.) and microsoft/nanoserver (a lightweight image supporting only .NET Core and managed via PowerShell).

Although Microsoft has become more open, Windows and Linux remain separate OS families; future support for Linux containers on Windows may arrive via Hyper‑V Container technology, but it is not yet available.

3. Container orchestration platforms now support mixed Windows and Linux nodes

Docker Swarm, from version 1.12 onward, allows any server—including Windows servers—to join a Swarm cluster, enabling mixed deployments of Windows and Linux nodes. While each node runs containers matching its OS, they can communicate over the Swarm network to build a complete application.

This facilitates cross‑platform micro‑service architectures. For example, a legacy ASP.NET monolith can be containerized using microsoft/windowservercore , then gradually split into micro‑services running on microsoft/nanoserver (.NET Core) while other components like Nginx run on Linux nodes.

Mixed Docker Swarm clusters provide flexible paths for micro‑service decomposition and are attractive to development teams.

4. Windows Container licensing follows the host operating system

Microsoft’s Windows container images on Docker Hub include EULA statements indicating that container licensing is tied to the host OS edition (e.g., Datacenter or Standard). According to the Windows Server 2016 licensing whitepaper, Datacenter permits unlimited Hyper‑V Containers, Standard permits two, while native Windows Server Containers are unlimited.

Although most Docker Hub images are open‑source, open‑source does not always mean free; Docker Store also offers commercial images that require payment.

5. It’s time to start exploring Windows Containers

Windows Server 2016 and Windows 10 have had container services for some time, and Microsoft’s close collaboration with Docker has stabilized the APIs. If you are considering containerizing Windows applications, now is the appropriate moment to begin.

Recommended Training

【 Docker‑based DevOps Practical Training 】 is a three‑day, closed‑door course taught by Xu Lei in Beijing from March 24‑26, 2017, combining years of DevOps experience with Docker technology for strong practical value. Click “Read Original” for details and registration.

DockerDevOpsDocker SwarmHyper-VContainer ImagesWindows Containers
DevOps
Written by

DevOps

Share premium content and events on trends, applications, and practices in development efficiency, AI and related technologies. The IDCF International DevOps Coach Federation trains end‑to‑end development‑efficiency talent, linking high‑performance organizations and individuals to achieve excellence.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.