dependencies, and its payload, which comprises the files and folders that make up its
virtual filesystem layer. Multiple container instances created from the same container
image are guaranteed to start and behave in the same way.
I’ve been talking about containers so far; I’ve not said Windows containers.
Containers have been around for a long time on Linux, and the features I have
described are a core part of its container feature set and philosophy. Windows Server
2016 brings those same features to Windows applications with Windows containers,
which is a different implementation of the technology to enable containers, but the
management is performed in a consistent manner through Docker, which is covered
later in this chapter.
The official Microsoft container resources are a great asset and are available at the
following locations:
Forum—http://aka.ms/containers/forum
Videos—http://aka.ms/containers/videos
Documentation—http://aka.ms/containers
LINUX APPS ON WINDOWS?
People often ask whether the introduction of containers on Windows means that
Linux applications will run on Windows Server. The answer is no. Linux
containers will not run on a Windows container host, and Windows containers
will not run on a Linux container host. If you look again at Figure 10.1, this makes
sense. The application container depends on a library container that depends on
an OS version that has to match the container host OS. The application is still
running on the underlying container host OS; it’s just isolated from other
applications. Linux applications don’t run on Windows, and vice versa. If you
want to run Linux applications on a Windows OS, you need virtualization and to
create a VM running Linux. Maybe one day when containers utilize VMs in some
way, it may be possible, but not today. Keep reading . . .