Microsoft looks forward to the day when customers will run Windows containers, built with the popular Docker Engine, on the Azure public cloud and in the enterprise data center in a coordinated fashion.
Microsoft displayed that vision June 21 at DockerCon 2016, which is underway in Seattle.
Docker containers still don't run natively under the production versions of Windows Server, but they're slated to later this year when Windows Server 2016 becomes generally available. Windows Server 2016 is now in its fifth technical preview. Its preview release can run Windows Containers. It's expected to become generally available in the third quarter.
Microsoft is making Docker Datacenter, an end-to-end container management system, available on its Azure Marketplace. That's the company's online store, where open source and preconfigured applications are available to work with Windows systems. By giving Windows developers a chance to get acquainted with Docker Datacenter, they will be ready to use Docker Engine as Windows Containers become part of Microsoft's product line.
Microsoft has worked closely with Docker to ensure the Docker Engine will run under Windows Server 2016.
Windows Azure CTO Mark Russinovich wrote in a June 21 blog that Docker Datacenter could be used to manage Windows Containers deployed across both the Azure public cloud and an Azure Stack. The latter allows an Azure-like software environment to be deployed behind the firewall as a private cloud system.
"A hybrid cloud solution that can manage container-based applications across on-premises and cloud infrastructure is a compelling proposition," Russinovich wrote.
Microsoft is seeking to make containers, a technology that was pioneered in the Linux community, first-class citizens on Azure. The move keeps Microsoft more closely in step with the large contingent of developers who wish to use containers as a convenient packaging device for code. It also makes Azure a suitable environment for future applications being developed for containerized operations.
Containers put an application, or a slice of application functionality known as a microservice, into a standard package that can be moved around and handled by software tools in a predictable way. The code become more mobile, requiring only a host with an operating system kernel that resembles the one it left, rather than extensive reconfiguration.
In addition, Microsoft is seeking to allow the extensive Windows and .Net developer community participate in building microservice-based applications, sometimes alongside a Linux-oriented team of developers. Although each team would produce services that run under their respective operating systems, both sets of components could be containerized under Docker and handled in similar way by operations.
[Want to see how Microsoft is trying to get Docker integrated into the Windows environment? Read Microsoft, Docker Intensify Container Collaboration.]
Russinovich also showed the 4,000 DockerCon attendees Microsoft's new Operations Management Suite for managing containers inside the enterprise data center, in the Azure cloud, or with Amazon Web Services.
It can also be used to deploy containers to the VMware vCloud Air or an OpenStack cloud.
Russinovich also showed a preview of an Azure Container Service to match the container deployment services already available on AWS and Google Cloud Platform.
The Azure version will be able to deploy containers using Docker Swarm, Docker's orchestration system for building a container cluster and assigning containers to it. Although Russinovich mentioned Swarm, Azure Container Service won't necessarily be limited to it. In his blog post, he cited "a choice of open source orchestrator technologies," which might include Mesosphere Data Center Operating System and CoreOS's Tectonic, among others.
As if to demonstrate the brave new world of combined Windows and Linux technologies, Russinovich made final mention in his blog of SQL Server running as a Docker image, available now in private preview. The Microsoft relational system is running under Ubuntu Linux when it runs in a container today.