Microsoft and Docker have announced a strategic partnership to provide Docker support that will enable "container applications" across platforms back into Microsoft territory. The technology will be delivered in a future release of Windows Server so that programmers can create Docker container-based applications that use Windows Server, in addition to Linux.
Developers that want to create container applications using Docker will be able to use either Windows Server or Linux with the same growing Docker ecosystem of users, applications, and tools.
Docker is an open platform for developers and sysadmins to build, ship, and run distributed applications. Microsoft is a software development, operating systems, and applications company based in Redmond, Washington.
Consisting of Docker Engine, a lightweight runtime and open source packaging tool that builds, runs, and orchestrates containers, and Docker Hub, a cloud service for sharing applications and automating workflows, Docker enables apps to be quickly assembled from components and promises to eliminate the friction between development, QA, and production environments.
"This development is interesting because Docker has been a really fast-moving technology, having come out of almost nowhere a year ago to where now it is incredibly widely supported," said Al Hilwa, program director for software development research at IDC.
"This is Linux technology at the core, and so it wasn't surprising that Amazon supported it in April. Microsoft was fast to support it a couple of months later in its Linux offering on Azure. This announcement is about supporting it more directly inside Windows. It is a bit of engineering, but Microsoft wisely decided that it did not want to leave Windows developers out of the Docker party," added Hilwa.
The IDC analyst argues that this is good for Microsoft because those 45K applications Dockerized out there will be able to run on Windows.
"What is even more interesting is that the work on the Docker engine in Windows is being done in open source, showcasing the new Microsoft attitude towards open source (e.g., the open sourcing of Roslyn a few months ago). I really think we are seeing a faster and more open Microsoft, one that is more willing to integrate and collaborate with competing technologies without a lot of hesitation," said Hilwa.
Key components of this partnership are as follows:
- Docker Engine will work with the next release of Windows Server. In addition, Docker Engine images for Windows Server will be available in the community-driven Docker Hub. This (says Microsoft) will help drive greater developer agility by making some of the best images for Windows Server and Linux available.
- Docker Hub will also integrate into Microsoft Azure directly through the Azure Management Portal and Azure Gallery.
- Microsoft has also announced its contribution to Docker's open orchestration APIs, (hopefully) ensuring portability for multi-container applications. For the first time, developers will be able to directly work with a pre-configured Docker Engine in Azure to create a multi-container Dockerized application.
- The Docker Engine for Windows Server will be developed under the aegis of the Docker open source project, where Microsoft plans to participate as an active community member.
"We recognize the importance of providing flexibility to our customers as they look to innovate in this mobile-first, cloud-first world," said Scott Guthrie, executive vice president of Cloud & Enterprise at Microsoft. "To deliver this flexibility, we are already providing first-class support for Docker and Linux on our rapidly growing cloud platform, Microsoft Azure. Our partnership with Docker further deepens our commitment to help create an open platform powered by choice, bringing together Windows Server and Linux to drive application innovation."
Corporate VP of Azure at Microsoft Jason Zander blogged, "Docker has done a fantastic job of building a vibrant open source ecosystem based on Linux container technologies, providing an easy user experience to manage the lifecycle of containers drawn from a huge collection of open and curated applications in Docker Hub. We will bring Windows Server containers to the Docker ecosystem to expand the reach of both developer communities."
Microsoft Open Technologies Inc. (MS Open Tech) has made the Docker Engine for Linux available to Microsoft Azure customers since June 2014. Engineers from Docker and MS Open Tech continue to work together to orchestrate containers on Azure, which is planned to be integrated in a future Docker release.