Right now, the Azure Container Service is a Linux only offering. We are working to enable Windows Server Container support using the Windows Server 2016 preview. Stay tuned for future announcements on this.
One of our primary goals with ACS is to make sure we offered versatility with the platform. We wanted to support both a choice of orchestrators (DCOS and Swarm) and wanted to expose these open source solutions directly, enabling cross-cloud mobility.
Let me give it a shot, very succinctly (although I am constantly being told I am too verbose). Here is what Mark demo'd today at DockerCon:
1) We showed an application deployment, using Docker, of a Windows Server Container (running Node) and a Linux container (running .NET). The exact same Docker client can be used for deployment and managing both.
2) We showed DockerHub integration in Visual Studio Code with intelligent code complete (it auto-fills the DockerHub image you want). Visual Studio Code is a free version of Visual Studio that runs on MAC/Ubuntu: https://code.visualstudio.com/
3) We showed Visual Studio Online continuous integration that packaged and deployed a Docker container using Swarm/Compose on Azure.
4) We showed Azure Marketplace deployment of DockerHub images, that will deploy and configure multiple Docker containers onto Azure Linux VMs (we showed one that deploys both a wordpress and MySQL container on a single Linux host using compose).
5) We showed the Docker Trusted Registry image available to deploy from the Azure Marketplace.
Hopefully that helps (and has removed marketing speak? :)).
Great question. Because the containers pull from the underlying host operating system, you will be able to deploy a Windows Server Container on a Windows Server host but you cannot deploy a Linux container on a Windows Server host (and vice versa).
However, you can run either a Windows VM or a Linux VM on Hyper-V (or in Azure).
Also, you can now run .NET applications on Windows or Linux. But that is a bit orthogonal to your question. :)
Thanks for the comments, fixxer. For the comment on memory allocation, I would love to know more details about where you saw problems as we are always trying to make Linux run better on Azure (and Hyper-V). For DNS, I would be surprised if this was the virtualization stack although it can be tricky to set-up DNS in the cloud.
For our partnership with Docker, it has already been very valuable to MS. With Azure, we want to offer customers and partners the ability and flexibility to deploy applications from any ecosystem and find many of our customers want to deploy both Windows and Linux as part of their application. For us, Docker offers an amazing API that spans the underlying container technology, for both Windows Server and Linux, to enable deployment, management and orchestration with the exact same tools and solutions. For example, the same Docker Client works against a Windows Server host and a Linux host.
We are excited to continue to partner with the Docker community, as our customers really do want this consistent experience, on Azure, on-premises and even in other clouds across Windows and Linux.
I will second Corey's request - we've been working to make sure that dynamic memory and other features of Hyper-V are first class experiences on Linux, if you can share details on what issues and what versions you had them on that would be really helpful.
Yes, the Cloud Services grouping around IaaS VMs wasn't a good idea and is awkward. You can blame me for that. :) Stay tuned next week. We may have some solace for you.
Am I confusing something? That looks like Linux guest support on a Windows Server host, which is rather different to the Windows Container topic of this thread.
I think that the goal was to show that Microsoft already supports the Docker orchestration stack with its current products - and in doing so is laying the groundwork for integrating future Windows containers into that same stack.
This is pretty close, but there is not actually a VM in the Hyper-V Container. The key thing is, these containers will take advantage of Hyper-V enforced isolation and virtualization but without requiring the full VM. So, while it has this increased isolation, it is still a container, with what you would expect from a container, including better density, faster start-up times, and portability. And will have Docker platform support to make it more flexible across environments.
This is where the Windows team is doing the work to add Windows Server support to the Docker engine. We are working with Docker Inc. to plan the PR up, once it is ready for primetime.
Hi Justin,
We are doing most of our working in a branch right now (https://github.com/microsoft/docker/tree/jjh-argon), as we stabilize the Windows Server Container and Hyper-V Container foundation the work we are doing to develop new drivers into the docker engine will stabilize and we’ll be pushing it upstream.