The Docker overlay network enables communication between containers on different hosts. It also supports a routing mesh, which load-balances and routes incoming connections to the containers. On Windows Server 2016 before the latest version this routing mesh is not supported. Now it is, with the release of version 1709, so we can see how it works.
Docker Swarm enables containers to be managed across different hosts. It work on Windows Server 2016 hosts, but the built-in routing mesh is not supported until the newest Windows Server version 1709, released in October 2017.
A series of blogs about the new Windows Containers feature and what it means for enterprise infrastructure.
An option with Windows Containers is to run a container in Hyper-V Isolation Mode. This blog shows what happens when we do this.
A container is an instance of an image. The instance consists of the read-only layers of the image, with a unique copy-on-write layer, or sandbox. The writable layer is disposed of when we remove the container. So clearly we need to do something more to make data persist across instances. Docker provides two ways to do this.
This post is a building block for working with containers on Windows. I have covered elsewhere installing the Containers feature with Docker, and running containers with the Docker command line. We can't do much that is useful without building our own images. Doing this tells us a lot about what we can and cannot do with containers on Windows.
When you first set up Containers on Windows Server 2016, you would imagine there would be some kind of management console. But there is none. You have to work entirely from the command line. Portainer provides a management GUI that makes it easier to visualise what is going on.
If we create an instance of an image in interactive mode, and run a PowerShell console in it, then we can see inside the container.