Microsoft Server Now Supports Docker Containers

First released as a Technical Preview version on October 1, 2014 and later released under general availability on October 12, 2016, Windows Server 2016 is the newest version of Microsoft's signature server operating system. It was developed alongside Windows 10, offering many of the same functions and features. Of course, Windows Server 2016 also introduces several new features, including Active Directory Federation Services, Windows Defender antimalware, Remote Desktop Services to support OpenGL 4.4 and OpenCL 1.1., Storage Services, Failover Clustering, Web Application Proxy for preauthorization of HTTP Basic, and ISS:10 support for HTTP/2, and Windows PowerShell 5.1.

In addition to the features mentioned above, Windows Server 2016 also supports a new method of installation: Nano Server. This option allows users to install Windows Server 2016 with a minimal footprint by excluding the standard user interface, support for 32-bit software, and the Windows Installer. Nano Server also no longer supports the console login, with all management activities performed remotely through the Windows Management Instrumentation (WMI), PowerShell, or Remote Server Management Tools.

Docker Containers

Originally released March 13, 2013 and written by Solomon Hykes, Docker is an open-source project for the deployment of Linux applications inside virtualized software containers. It works by creating an extra layer of abstraction and automation of the virtualization on Linux, using the resource isolation functions of Linux kernel.

So, why should you use Docker? Being that containers only include the absolute minimal amount of resources needed to run the application, it reduces file size while also allowing for faster deployment. Docker containers can also be shared with others using a remote repository. And there's the benefit of portability across machines, as multiple applications can be bundled into a single container. These are just a few of the many reasons why so many IT organizations and professionals are using Docker technology in their operations.

Docker can be integrated into several platforms, such Amazon Web Services, Ansible, CFEngine, Chef, Google Cloud Platform, IMB Bluemix, Jelastic, Jenkins, Microsoft Azure, OpenStack Nova, OpenSVC, HPE Helion Stackato, Puppet, Salt, Vagrant and many others.

Docker Support

As explained on the official Docker blog, the company's partnership with Microsoft allows for the support of CS Docker Engine on Windows Server 2016 at no additional cost. All Windows Server 2016 customers will also receive enterprise-level support, which is backed by Docker itself. Furthermore, the two companies will promote Docker Datacenter so IT professionals can secure their software chain and better manage server workloads.

Docker for Windows Server 2016 allows IT organizations and professionals to manage their Windows containerized apps using Linux containers, without experiencing compatibility problems between Windows and Linux.

IT analysts were quick to emphasize the fact that Microsoft is giving away Docker support for free, which could indicate the company's focus on the ever-growing container market.

With industry analysts declaring Windows Server with more than 60% of the x86 server market, and citing Microsoft Azure as the fastest-growing public cloud, it comes as no surprise that Microsoft, even at its current scale, is further extending its leadership as a strategic, trusted partner to enterprise IT,” wrote Scott Johnston when announcing the partnership. “It is this industry leadership that catalyzed our technical collaboration in the Docker open source project back in October 2014, to jointly bring the agility, portability, and security benefits of the Docker platform to Windows Server. After two years of joint engineering, we are excited to unveil a new, commercial partnership to extend these benefits for both Windows developers targeting Windows Server and enterprise IT professionals.”

It's important to note, however, that Docker will only run on Windows Server 2016. If you currently use Windows Server 2012 or any previous version, you'll have to upgrade in order to install and run Docker.

How to Install Docker on Windows Server 2016

Installing Docker on Windows Server 2016 is actually easier than most users realize. The only prerequisite is a single computer running the Windows Server 2016 operating system, which can be either a physical or virtual computer, along with Hyper-V role installed. Some users may prefer using a virtual computer to save or conserve reserves – and that's perfectly fine when installing Docker.

When you're ready to begin, go ahead and download the PowerShell module here. This will allow you to run containers on your computer and subsequently install Docker.

After downloading the PowerShell module, open an elevated session and run this command: “Install-Module -Name DockerMsftProvider -Repository PSGallery -Force”

Next, install Docker by running this command: “Install-Package -Name docker -ProviderName DockerMsftProvider”

The PowerShell module will now ask you whether to trust the package source. Enter “A” when prompted to proceed with the Docker installation. After Docker has been installed on your computer, it will ask you to reboot. Reboot your computer to finish the installation process. Sorry if you were expecting more, but that's all it takes to install Docker on Windows Server 2016!

If you wish to push images to the Docker Cloud, though, you'll need a Docker ID (don't worry you can create one for free). Using this feature allows IT professionals to build artifacts, even if they wish to use them later instead of now. You can build Docker images using the docker build, which is found in a Dockerfile recipe. All images stored on Docker Cloud can be accessed via the standard web interface here.

To learn more about running Docker on Windows Server 2016, visit https://www.docker.com/microsoft.

Thanks for reading and feel free to let us know your thoughts in the comments below regarding Docker.