This content is part of the Conference Coverage: Microsoft Ignite 2017 conference coverage

Microsoft and Docker collaboration puts Linux containers on Windows

Microsoft's project to run Linux containers on Windows bridges a technical divide, but developers who work on the open source operating system may not be swayed so easily.

AUSTIN, Texas -- Microsoft might have been late to embrace Linux, but its new open source initiative that runs Linux-based containers on Windows Server is an attempt to make up for lost time.

The ability to run Linux containers on Windows won't entice Linux shops to migrate to Windows, but it could appeal to smaller companies or larger Windows shops that also need a Linux component.

"The simplicity of managing just one flavor of operating system can make a lot of sense," said Ezra Gottheil, principal analyst at Technology Business Research based in Hampton, N.H.

The project also aims to lighten the load on Docker's engineering team -- the company only employs about 150 people -- to create a Windows-compatible version of Docker Datacenter and other Docker components. The ability to run Linux containers on Windows will allow Windows Container users to run Docker Datacenter, which itself is based on a collection of Linux containers, on top of Windows Server.

We have Linux, Mac and Windows. The more we can move stuff back and forth, the better off we are.
Simon Webstersecurity engineer, University Corporation for Atmospheric Research

In fact, part of the motivation for the project -- which is still in the works -- was the challenge for Microsoft to support Linux containers in Azure, said Taylor Brown, principal lead program manager at Microsoft.

"[Customers] are just giving us a container image and we have to figure out how to run that, how to make it an efficient experience, all while maintaining multi-tenant isolation," Brown said. "The ability to run Linux and Windows side by side is really valuable for us."

The project, which Microsoft revealed here at DockerCon, also promises to give developers more platform options and enable operations teams to worry less about where and how they deploy containerized applications.

"It's going to be a big deal for the future for interoperability, moving stuff from platform to platform," said Simon Webster, security engineer at the University Corporation for Atmospheric Research based in Boulder, Colo. "We have Linux, Mac and Windows. The more we can move stuff back and forth, the better off we are."

Portability across different clouds is also appealing, especially for a semi-governmental agency, as it could make it a lot easier to collect competitive bids, he added. Others saw the feature as more of a checkbox for Microsoft or novelty that wouldn't appeal to most enterprises.

"It's nice that you can more natively run Linux stuff on Windows, but I don't think it's something large companies would use in production," said Nima Esmaili Mokaram, a software engineer at Quicken Loans. "I can see smaller .NET shops that have a couple Linux containers they want to run too; that would be a great audience. But if you have the capital to buy some Linux servers, that enhances the performance and potentially would be less headaches."

Microsoft, in partnership with Docker, rolled out two flavors of Windows-based containers -- Windows Server Containers and Hyper-V Containers -- with the release of Windows Server 2016 last year. However, Docker's containerization model began as a Linux project, and the open source community has championed most of the development and innovation that's made containerization the technology du jour.

Microsoft's plan to run Linux containers on Windows Server isn't a technical breakthrough, and it borrows concepts that Intel's Clear Containers and VMware's Photon projects advanced. The company plans to work with the open source community using Docker's LinuxKit to create a custom Hyper-V VM running a lightweight OS purpose-built to host a container image. Like similar VM-optimization projects, Microsoft's approach would allow the VM to shed unnecessary components and drivers; the reduced overhead improves efficiency over a standard VM.

Microsoft's awkward Linux embrace

Docker and Microsoft have continued to work closely despite the historical divisions among Windows and Linux practitioners.

"Microsoft's hesitancy of supporting other platforms is gone," TBR's Gottheil said. "The company is much more open to interoperability than it was under [former CEO Steve Ballmer], although Ballmer wasn't really all that bad."

Even if Microsoft is anxious to bury the hatchet, the divide was still palpable at DockerCon.

"Historically, there's been a huge divide: You're either a Windows guy or a Linux guy," Webster said. "The fact that Microsoft has taken this step means that they're potentially bringing together different IT groups. Breaking down walls between those two would be useful."

That divide was the topic of discussion at a DockerCon session about media and analyst perspectives on Docker. (It also carried over to the public DockerCon Slack channel, where a comment that Windows developers are not "real developers" collected dozens of thumbs-up from attendees.)

The Windows community often still feels segregated, but things like a shared Docker experience will help bridge the two worlds and foster communication, said Donnie Berkholz, research director at 451 Research, during the session.

"Right now, there are hardly grounds for a conversation between a Linux- or Mac-based developer and a Windows developer."

Nick Martin is executive editor for TechTarget's Modern Infrastructure e-zine, and former senior site editor for Contact him at [email protected].

Next Steps

Docker for Windows Server 2016 GA details

Container support debuts in Windows Server 2016

How do Windows Server containers affect applications?

Dig Deeper on Enterprise infrastructure management