Docker was arguably a dumb thing for you to do with your time last year. Developers loved it but enterprises weren’t so sure.
That was then, but now Microsoft – mighty in enterprise tech and filled with deep and abiding love for open source – is perhaps Docker's best friend. Not only is Microsoft getting behind Docker-style containers (along with everyone else on the planet), but it's also placing big bets on Docker, the company.
That may not seem like a big deal, but it's a taste of the old, more combative Microsoft. By cosying up to Docker, Microsoft is pitting itself against the community standard Kubernetes.
Oh, sure. Microsoft supports Kubernetes, and even went so far as to hire Google's lead Kubernetes engineer in 2016. According to sources familiar with Microsoft's container initiatives, however, the real focus is on working with Docker and its Datacenter service.
Having Microsoft's weight behind it is obviously good for Docker's ability to monetize the popularity of its containers, but it's also setting up the next big "Windows vs Linux"-type battle for the future of enterprise IT. Containers going ga-ga.
Why is Microsoft's backing significant?
Operating systems used to matter, and functioned as the basic foundation for all of enterprise computing. Operating systems mattered so much that Microsoft was founded on an operating system – Windows – and built a powerful, multibillion-dollar business franchise on operating systems.
They mattered so much that Microsoft spent years (and tens of millions of dollars) fighting the rise of a nebulous insurgent operating system – Linux.
Not until 2007 did the company retire its aggressive "Get the Facts" website that sought to lessen the appeal of Linux. Instead, the company slowly opened its embrace of the open-source rival as CIOs demanded Microsoft workloads play nicely with Linux, eventually also supporting Linux on its growing Azure cloud service, too.
Now, though, the operating system's fortunes are waning along with the rise of something different, but not unconnected: containers, the new atomic unit of computing, according to Redmonk analyst Stephen O'Grady. In this new container-rich world, it's not Linux vs Windows that matters, but increasingly the orchestration engine used to manage containers in production.
In a nod to its past, however, Microsoft isn't backing the open-source community standard, Kubernetes. For example, if we look at relative growth in jobs listing different container managers, Kubernetes shows up in dramatically more postings. If we use LinkedIn as a proxy for the growth in professionals with aptitude and interest in container managers, Kubernetes dwarfs all competitors. Ditto the rise in Stack Overflow questions, suggesting rising interest as enterprises put Kubernetes into test-and-dev then production.
All of which isn't surprising, given that Kubernetes is the only container manager without one dominant vendor standing behind it – Google. Of course, Google established an independent foundation to manage Kubernetes, making it safe for others such as Red Hat to pile on (which they have).
Still, Kubernetes was hatched at Google, and may be one big reason Microsoft has minimized its investment there and spends most of its container resources on Docker – Microsoft, incidentally, also made an early bet on Mesos. Windows Server 2016 was built with Docker integration and shipped with Docker Engine, which includes the Kubernetes competitor built in.
And yet working with Docker may be smart business for Microsoft. Early momentum may favour Kubernetes but Docker is the creator of what seems to be emerging as the de-facto container standard. As Docker CEO Ben Golub shared with me, there are a lot of containers to manage, with huge spikes in developer and enterprise interest to match.
According to one analysis, Docker adoption has more than doubled in the last year alone.
Nor is this merely developers kicking the tires with test-and-dev instances. As researcher ETR has shown, CIO interest in Docker leads all other infrastructure in terms of purchasing intent, the highest score ever recorded in ETR's analysis.
The question now is who is going to be able to bank this interest and adoption? One answer, as you'd expect, is Docker. CEO Ben Golub claims there has been "massive growth in customers and revenue" in the 10 months since the introduction of Docker Datacenter.
He says Docker's "commercial offerings" are in use by a "who's who" of North American and European banks, manufacturers, retailers, health care companies, and government agencies.
Enterprises are finally starting to scale their Docker deployments, requiring tools like Docker Datacenter to manage that, Golub told me. "Multithousand node deployments are now common, and customers who did small-scale pilots two quarters ago are now signing $500k to $1m annual subscriptions."
Though he didn't share absolute revenue numbers, Golub did indicate significant acceleration: "In Q4, revenue more than doubled, and we were really already happy with our Q3 results."
Even so, it's almost certain that Red Hat, the number-two contributor to Docker, makes more money on containers than Docker Inc. does. Red Hat's OpenShift, built on Kubernetes, is how the open-source infrastructure leader makes it easy for enterprises to manage their containers. According to Red Hat CEO Jim Whitehurst in the company's most recent earnings call, the company has sold "over 50 OpenShift deals alone that were six or seven figures" with two delivering more than $10m and one over $5m.
That adds up to significantly more than the $25m to $50m that Docker Inc. is believed to be generating.
I'll go one step further: Microsoft very likely mints more from Docker containers than Docker Inc. So does AWS. Most containers are deployed in public clouds, with Microsoft Azure and AWS (along with Google) almost certainly earning the vast majority of the $762m that 451 Research estimates was earned from container vendors in 2016.
As this massive industry shift toward containers heats up, each of the major cloud and enterprise infrastructure vendors is getting religious about container orchestration and management engines. As they do so, they're picking sides, though most vendors are trying to keep at least a toe in opposing container orchestration camps.
Red Hat, Google, and a host of other vendors are firmly behind Kubernetes, even as Microsoft stands behind Docker (and, reportedly, made a $4bn buyout offer to bring Docker firmly into the Redmond fold). AWS, for its part, hardly makes mention of Docker, though it does support containers, and seems to be more interested in serverless computing services like Lambda.
Containers, then, are table stakes. Running them at scale is where the real action is, and Microsoft's outsized support for Docker Inc. and its commercial offerings, even as its chief competitors stand firmly behind Kubernetes, is setting the industry up for another "Linux vs Windows"-style war. Complicating matters, AWS seems happy to support containers while – also – trying to move beyond them to serverless computing services.
Lambda could indeed be the future of computing, but the next five to 10 years will be slogged out in the trenches of container warfare. Some suggest that in such a peace-love-and-Linux open-source world, there's plenty of room for multiple winners. Such people clearly haven't read the Twitter debates between the different factions.
Regardless of Twitter bravado, the history of open source suggests one winner takes most, with everyone else picking up scraps. Think Red Hat in Linux, MySQL in relational databases, MongoDB in NoSQL, etc. Microsoft is getting behind Docker, even as Google, Red Hat, and the rest of the market stands behind Kubernetes.
This could get ugly. ®