Microsoft Azure makes Docker a first-class citizen

The newest features for containers and microservices in Azure are another step away from the obtrusive toolchains of the Microsoft of old

Microsoft Azure makes Docker a first-class citizen
Current Job Listings

The most striking thing about Microsoft's latest spate of announcements about containers and Azure is not how visible Microsoft is trying to be to developers, but how invisible.

In the Docker-related announcements Microsoft made yesterday at DockerCon 2016, the emphasis has been on Docker first and Microsoft second. Or, rather, it's been on how Microsoft's container-oriented offerings through Azure approach the same kind of unobtrusiveness that Docker has wanted to offer through its own tools.

Docker Datacenter, for instance, is now being offered through the Azure Marketplace. Datacenter is Docker's chief enterprise offering, an end-to-end system for delivering, managing, and gaining insight into containerized apps. But it won't help much if deploying it on Azure is a headache, so Microsoft is bundling Azure Resource Manager templates with Datacenter to automate the setup process.

There's also the preview of the previously announced Azure Container Service, now with support for Windows Server containers. But its support for Linux and the newly integrated Docker Swarm (now native to Docker 1.12) remain the real attractions -- and again, they come with templating to make Azure setup a minimal affair.

The goal, then, is getting people to use Azure while giving them more freedom to not have to think about the fact they're using Azure and Microsoft.

This is as much a pivot for Microsoft as its vaunted emphasis on open source and open standards, but the signs all point to it being lasting and genuine. Consider Microsoft's developer toolset. The newest tools -- Visual Studio 2015, and the ultra-lightweight Visual Studio Code -- are being built to meet developers where they already are and where they want to be. To that end, Microsoft plans to make those tools a part of this new containerized-app pipeline.

During the Tuesday morning DockerCon keynote, Microsoft Azure CTO Mark Russinovich demonstrated the interactive debugging of containerized apps running on Azure, using Visual Studio Code and Docker Compose. The emphasis was on the code itself and the problem at hand, rather than Compose, Azure, or even the workings of Visual Studio Code itself.

All of this is prelude to what Russinovich described in an interview later as deeper integrations with Microsoft's toolset, "regardless of what the underlying container orchestration or microservices platform happens to be."

This isn't to say Microsoft isn't building anything at all in this space with its own, Microsoft-branded advantages. For managing state with microservices that run on Service Fabric, for instance, Azure can expose cluster-wide replicated data structure types through the .Net framework "that look very similar to the built-in .Net data structure types," as Russinovich explained.

But ultimately, the emphasis Microsoft is putting on this is isn't by way of any particular language or runtime. And when it is on Azure, it's by way of Azure being an enabler, not the raison d'etre.

"The developer experience is going to get a lot richer," said Russinovich, "and you're going to have PaaS runtimes built on top of this that make it possible for developers to focus solely on the application."