Carl Fisher

Docker for Windows 17.11 with Windows 10 Fall Creators Update

Experimental support for Microsoft’s Linux containers on Windows (LCOW) feature has been available for Windows Server 1709 via the Docker EE “Preview” release. The same functionality is now available for Windows 10 Fall Creators Update with the release of Docker for Windows 17.11. In fact, it’s been available since Docker for Windows 17.10. 

How to get it

Docker for Windows 17.11 is an Edge channel release. If your copy of Docker for Windows is set to the Edge or Nightly channel you will receive the update automatically. Users on the Stable channel will need to switch to Edge via the Setting dialog to receive the update.

Doesn’t Docker for Windows already run Linux containers?

That’s right. Docker for Windows can run Linux or Windows containers, with support for Linux containers via a Hyper-V Moby Linux VM (as of Docker for Windows 17.10 this VM is based on LinuxKit).

The setup for running Linux containers with LCOW is a lot simpler than the previous architecture where a Hyper-V Linux VM runs a Linux Docker daemon, along with all your containers. With LCOW, the Docker daemon runs as a Windows process (same as when running Docker Windows containers), and every time you start a Linux container Docker launches a minimal Hyper-V hypervisor running a VM with a Linux kernel, runc and the container processes running on top.

Because there’s only one Docker daemon, and because that daemon now runs on Windows, it will soon be possible to run Windows and Linux Docker containers side-by-side, in the same networking namespace. This will unlock a lot of exciting development and production scenarios for Docker users on Windows.

As part of Docker’s “batteries included” philosophy, Docker for Windows 17.11 includes a highly-optimized LinuxKit-based kernel and userspace to enable the utility VMs, and the configuration required to use LCOW out of the box. The container-optimized LinuxKit components provide high performance for starting and stopping containers compared to a traditional Linux OS.

As a Windows platform feature, LCOW represents a long term solution for Linux container support on Windows. When the platform features meet or exceed the existing functionality the existing Docker for Windows Linux container support will be retired.

Fire it up

When Docker for Windows 17.11 installs if your machine is running the Windows 10 Fall Creators Update you will get a splash screen offering to enable the Linux containers for Windows feature:

Linux container on Windows

When configured to use Linux containers for Windows, try running a simple Linux container:

docker run -it busybox

Docker run-it busy box

You can also take advantage of the localhost support in Docker for Windows:

docker run -d -p 8080:80 httpd

docker run -d -p 8080:80 httpd

Microsoft Edge

Switch

After installation the LCOW feature can be enabled and disabled via the Settings dialog:

Docker for Windows

When disabled, the existing options for switching between traditional Docker for Windows Linux containers and Windows containers will be available in the whale systray icon.

Future versions of LCOW will support running Linux and Windows containers side-by-side.

The LCOW feature is under active development:

If you build something cool let us know on Twitter!

, , , , ,

Carl Fisher

Docker for Windows 17.11 with Windows 10 Fall Creators Update


2 Responses to “Docker for Windows 17.11 with Windows 10 Fall Creators Update”

  1. Steve Prior

    If I read this correctly, previously one VM with the Linux kernel was launched which would run multiple Linux containers, but now a new VM with a copy of the Linux kernel will be launched for EACH Linux container. So the trade off for the ability to run Linux and Windows containers in the same networking namespace is the loss of memory savings when running multiple Linux containers – have I got that correctly? Maybe a fair trade depending on usecase, just trying to make it clear.

    Reply
    • Carl Fischer

      Yes, although the overhead of the utility VM is small thanks to the LinuxKit components. Multiple containers per utility VM is a potential future enhancement.

      Reply

Leave a Reply

Get the Latest Docker News by Email

Docker Weekly is a newsletter with the latest content on Docker and the agenda for the upcoming weeks.