At the O’Reilly Open Source Convention (OSCON), Microsoft announced their partnerships with Packer.io and OpenNebula to enable interoperability of applications and services with Windows Azure and Hyper-V. Similarly in July, Microsoft announced their work on Docker’s libswarm project and Kubernetes, two cluster-management solutions available for Docker containers, and several other open source cloud projects. Since their announcement, The Microsoft Open Technologies engineering team has been hard at work bringing Docker and Kubernetes support to Microsoft Azure. Recently, they are announcing that Kubernetes can be used to manage Docker containers on Microsoft Azure. In addition the Azure team has released the Azure Kubernetes Visualizer project which builds upon this work and makes it much easier to experiment with and learn Kubernetes on Azure.

Docker is an open-source engine that automates the deployment of any application as a portable, self-sufficient container that will run almost anywhere. Kubernetes is an open source cluster management tool, a declarative technology supporting orchestration and scheduling of Docker containers. With these latest contributions to the Kubernetes toolset, developers can transparently deploy and manage container clusters on Azure.

The key features we have implemented are documented in the Kubernetes project and can be summarized as:

Build a container and publish it to Azure Storage

Deploy an Azure cluster using container images from Azure Storage or the Docker Hub