Docker didn’t invent containers—the method of packaging up computer code into compact units that could be easily ported from laptop to server to server—but it did take them mainstream by creating a common set of open source tooling and reusable images which suddenly allowed all developers to build their software once and run it anywhere.
The ease with which Docker enabled developers to “containerise” their code and move it from system to system quickly established it as something of an industry standard, upending the dominant method of deploying applications on virtual machines (VMs) and establishing Docker as one of the fastest adopted enterprise technologies of a generation.
Today, Docker is still alive, but it is a fraction of the company it might have become, having never succeeded in turning this technological innovation into a sustainable business model, eventually leading to the sale of its enterprise business to Mirantis in November 2019. InfoWorld spoke to more than a dozen former and current Docker employees, open source contributors, customers, and industry analysts to hear the story of how Docker broke into pieces.
Docker is born
Founded as DotCloud in 2008 by Solomon Hykes in Paris, the company that would become Docker was initially designed as a platform as a service (PaaS) for developers to easily build and ship their applications.
Hykes was soon joined by his friend and fellow programmer Sebastien Pahl, before moving to Silicon Valley together to go through the prestigious Y Combinator program in the summer of 2010. Having already been rejected once, Hykes and Pahl reapplied, with Pahl’s dad fronting them the money for plane tickets to San Francisco a few weeks ahead of their interview. Alas the pair were rejected again, until YC alumnus James Lindenbaum, the founder of a competing company called Heroku, stepped in to vouch for them.
Docker as we know it was first demoed by Hykes at PyCon in March 2013, where he explained that developers kept asking for access to the underlying technology powering the DotCloud platform. “We did always think it would be cool to be able to say yes, here is our low-level piece, now you can do Linux containers with us and go do whatever you want, go build your platform, so that’s what we are doing,” he said during that talk.
“It sounds corny, but Solomon and I were talking pre-release and we could see all the container ships coming into the port of Oakland and we were talking about the value of the container on the world of shipping,” Ben Golub, Docker CEO between 2013 and 2017, told InfoWorld. “The fact it was easier to ship a car from one side of the world than to take an app from one server to another, that seemed like a problem ripe for solving.”
The Docker open source project quickly built up steam, attracting thousands of users, high-profile partnerships with the likes of Microsoft, AWS, and IBM, and wheelbarrows full of venture capital money, including early investments from Peter Fenton at Benchmark and Dan Scholnick at Trinity Ventures. The refocused company changed its name to Docker and went on to raise nearly US$300 million from the likes of Benchmark, Coatue Management, Goldman Sachs, and Greylock Partners. However, like many open source software-based companies, it struggled to find a profitable business model and those investors never got their big exit.
“Solomon built one of the most compelling technologies of the past 20 years and in the business of packaging something up with an opinion and making it extremely valuable to a huge number of developers, Docker was massive,” RedMonk analyst James Governor said. “Did Docker make bad decisions? Clearly yes, but the venture capitalists went mad and the amount of money they threw at them meant it must have felt like they could do anything, which was problematic.”
Fast forward to 2021 and the short version of this story is that the massively popular open source container orchestration tool Kubernetes ate the lunch of Docker (the business) by displacing its primary profit center: an enterprise version of its own container orchestration tool called Docker Swarm. However, the true story is far more complex.
Commercialising open source is hard
The combination of huge amounts of venture funding, a quickly growing competitive landscape, and the looming shadow of cloud industry giants all wanting a piece of the pie created a pressure cooker environment for the young company to operate within.
“There’s a saying that ‘when elephants fight, the grass gets trampled,’ and it became clear to us this wasn’t just about Docker, but how the cloud vendors were competing with each other. They all wanted to pull us in different directions. It was a constant juggling act to stay true to our values and roots and build a business,” Golub said.
The former CEO notes that all of these factors created “natural tensions” as Docker grew. “We wanted to build great community and monetise the developer product, while also building a great operator product to allow customers to build and deploy containers at scale,” Golub said. “That was the vision and pretty quickly we realised we had to scale rapidly and didn’t have a lot of time to balance the community and being a commercial business ... at a startup you are making 100 decisions a day, and you hope 80 are right.”
Docker started to get serious about a business strategy to monetise its leading position in the container world around 2014, when the company spent some of that VC money on the acquisitions of Koality in 2014 and Tutum in 2015, while also launching the first iteration of its own enterprise support program.
These investments led to products like Docker Hub—which you can think of a bit like a GitHub for Docker images (which also exists now)—and eventually Docker Enterprise. But none of these products truly took off with enterprise customers, who were generally happy to work with more established partners, or build rather than buy solutions, as Docker labored to produce a set of products customers truly wanted.
“We never shipped a great commercial product,” Hykes told InfoWorld while on vacation in France this summer. “The reason for that is we didn’t focus. We tried to do a little bit of everything. It’s hard enough to maintain the growth of your developer community and build one great commercial product, let alone three or four, and it is impossible to do both, but that’s what we tried to do and we spent an enormous amount of money doing it.”
“There was zero technical delivery happening outside of open source,” Nick Stinemates, former vice president of business development and technical alliances and one of the earliest employees at Docker, said. “There was a fundamental inability to deliver commercial software.”
With the benefit of hindsight, Hykes believes that Docker should have spent less time shipping products and more time listening to customers. “I would have held off rushing to scale a commercial product and invested more in collecting insight from our community and building a team dedicated to understanding their commercial needs,” Hykes said. “We had a window in 2014, which was an inflection point and we felt like we couldn’t wait, but I think we had the luxury of waiting more than we realised.”
Others think Docker gave too much away for free too early on. “They put something out for free that nailed it, home run,” Google’s Kelsey Hightower told Increment magazine earlier this year. “They solved the whole problem and hit the ceiling of that problem: Create an image, build it, store it somewhere, and then run it. What else is there to do?”
Hykes disagrees with this assessment. “I think that is wrong and generally speaking the core open source product created massive growth which created the opportunity to monetise in the first place,” he said. “Lots of companies monetise Docker successfully, just not Docker. There was plenty to monetise, just Docker failed to execute on monetising it.”
For example, both Red Hat and Pivotal (now part of VMware) were early partners with Docker, integrating Docker containers into their commercial PaaS products (OpenShift and Cloud Foundry respectively) and contributing back to the open source project.
“If I am being generous, the contributions from Red Hat early on spun Solomon out a bit,” Stinemates said. “Solomon burned a lot of bridges and there are threads on Hacker News of him starting fights with naysayers. Enterprise partners couldn’t have this with Solomon.”
Today, Hykes says that he was guilty of confusing “community with ecosystem.” Red Hat specifically “weren’t part of the community, they never rooted for the success of the Docker,” he said. “The mistake on our end was desperately wanting them to be part of the community. In retrospect we would never have benefited from that partnership.”
As a result, early customers like the travel tech company Amadeus turned to Red Hat in 2015 to fill what they saw as an enterprise-grade void left by Docker. “We transitioned directly from a pioneer mode, where we were leveraging the open source versions [of Docker], to a strong partnership with Red Hat, where they were covering the support of container tech for us,” Edouard Hubin, head of cloud platform solutions at Amadeus, told InfoWorld, via email. “Containerisation was the first step of the technological change away from virtualisation. The real game changer for the enterprise was the container orchestration solution. Clearly Docker lost this battle to Kubernetes and that was a very difficult situation for them.”
Read more on the next page...