Microsoft Moves Toward Open Source as Linux Fills Its Cloud

Microsoft is partnering with Docker to let you run Windows and Linux containers from a single console.
GettyImages84907878
Empty box on tableRichard Drury/Getty Images

In a perfect world, says Microsoft's Mark Russinovich, everyone would run Windows. But he's playing for laughs.

Sure, Russinovich wants people to run Windows. As a Microsoft Fellow, he helped build the company's flagship computer operating system. But like the rest of the rapidly evolving Microsoft, he also realizes that so much of the world now runs Linux, the Windows alternative built by a vast community of open source software coders. In fact, Russinovich says, Linux now drives about 25 percent of the activity on Azure, the Microsoft cloud computing service where businesses can run websites and other software applications without setting up their own computer servers. That's up from 20 percent in the fall.

Even if he did advocate an all-Windows world, Russinovich knows it will never happen. That's why Azure now lets businesses run their software on Linux as well as Windows. And it's why Microsoft is partnering with Docker, the "it" IT company among the world's elite coders. Docker rose to prominence by offering a way to more efficiently build and run software atop Linux. Now the two companies are now working to extend Docker's "container" technology to Windows.

This week, Russinovich, now the chief technology officer of Microsoft Azure, spent the day at Docker headquarters in San Francisco, and as part of Microsoft's ongoing effort to show that it has fully embraced Linux—after years of stiff-arming the open source OS—he and Solomon Hykes, the brain behind Docker, chatted about the Docker-Microsoft partnership with various reporters and analysts. Some have asked whether Microsoft might acquire Docker, and though that seems unlikely, Hykes and Russinovich are certainly pushing for a world where businesses and developers can run Docker containers on both Linux and Windows—something that seemed like a contradiction in terms just a few months ago.

"It brings together two worlds that are completely silo-ed," Russinovich says of the partnership between the two companies.

The partnership is another sign of a changing Microsoft—a Microsoft that realizes it must not only keep pace with competing technology but ensure that the competition can work in tandem with its own tech. Russinovich says that Microsoft could have built its own Docker-like container technology (it previously used such tech to run its own software services), but it chose to work in tandem with Docker so that coders could more easily use Windows in tandem with Linux. Russinovich says this only makes sense. But in previous years, such common sense was lost on Microsoft.

Code Comes Together

You can think of Docker as a shipping container for software. Basically, it's a way of packaging code so you can efficiently deploy and run it across a vast array of machines—an essential part of running modern software. Today's software must serve enormous numbers of people via the internet, which means it must run on an enormous number of machines. In a world where even small applications require enormous amounts of compute power, Docker represents the future of software development. That's why Microsoft has embraced it.

Because Linux and Windows are incompatible, you won't be able to run Docker Linux containers on Windows—or Docker Windows containers on Linux. But, says Hykes, you will be able to manage all your containers from a single console. "You can combine individual machines into a larger distributed system and you can interact with that system as a whole—even if some of those systems have unique properties," he says.

In other words, you may have some software that's built for Windows and some that's built for Linux, but you can juggle all of it, across many machines, from a single place. "The goal is to have a group of machines that can handle any payload you throw at it," Hykes says.

How many businesses are interested in doing such a thing? Hard to tell. Hykes indicates this is the primary demand among coders who use Docker, and Russinovich declines to speculate. But he says many Microsoft customers run both OSes, and he wants to at least give them the option of dovetailing those two worlds into an enormous whole. That, after all, is the way the online world is moving: towards machines that work together.