Today, containers’ role as a key component of computing infrastructure may seem like a given—yet without intentional moves by technical leaders invested in their future, they could well have become an afterthought. While the Open Container Initiative (OCI)’s concerted push for open standards may have caused IT giants to lose out on billions of dollars in revenue, developers have benefited from the availability of a plurality of free, open-source container technologies.
To ensure this vital technology remains vibrant, the OCI believes their open-source legacy needs to continue long into the future. And their work hasn’t ended: As many in the industry note, there’s more to be done to make the technology easier to implement and more accessible to developers just entering the ecosystem.
The past is present
In the beginning, there was VMware. In 2000, the software company was just over a year old and had single-handedly created the enterprise x86 virtualization market. By 2002, it had made its first million. When the EMC Corporation purchased VMware in 2004 for $635 million, the business was still ascendant, and by 2010, it held an 84 percent share of the virtualization market. Five more years of dominance were good news for VMware, but led Chris Aniszczyk, executive director of the OCI and CTO of the Cloud Native Computing Foundation (CNCF), and other open-source advocates to seek a more equitable alternative for the next generation of cloud computing.
Containers and the open-source ethos have been intertwined since their inception, from FreeBSD’s jail mechanism, released in 2000, to Linux’s VServer, released in 2001, to Solaris Containers, released in beta in 2004. This is a product of their origins in Linux. “That’s where almost all of the relevant technology has originated,” says Alexis Richardson, CEO and founder of Weaveworks, a software company specializing in Kubernetes implementation.
“It’s like these layers of civilizations that built on the prior one, and they all have this constant thread running through them that all this was developed collaboratively [in the open-source ecosystem],” adds Phil Estes, a principal engineer at AWS and a member of the OCI’s technical oversight board.
Read more in issue 17
This issue shares practical considerations and functional approaches to containerization, and examines the container ecosystem’s scope, scale, and panoramic possibilities.
But by 2013, the success of one brand name, Docker, in the container space raised the hackles of those who wanted to see a diversified market for container technologies.
“There’s a set of people who got quite grumpy that Docker got the hero’s welcome for assembling these [existing technologies] together,” Estes says. “Other people said, ‘I’ve been using this or that for five or 10 years in my own tooling.’”
One of the most prominent proponents of plurality in the container space was CoreOS. When it released its rkt container runtime specification in 2014, some in the sector saw conflict brewing and took action.
“The OCI was almost a direct response to the fact that a lot of the industry saw this as a collision course,” says Estes. “Some people will say CoreOS had a better idea, [some will say] Docker had a better idea, and we’re going to splinter the market”—which could have hindered adoption by creating competing standards followed by different companies. “It was said in a much nicer way: ‘Hey, let’s all get together and create some common specifications around what a container is and how we run containers.’ But the undercurrent was, everyone knew rkt and Docker might divide the industry.”
When the OCI formed in 2015, its main focus was on standardizing the container runtime to avoid fracturing the market. But Aniszczyk and others in the OCI felt that was a piecemeal solution, and that additional standardization efforts could help make container technologies more robust and interoperable, which would lead to wider adoption. “Eventually, we went up the stack,” Aniszczyk says. “The next thing to standardize was the image format. Then, the next step is distribution.”
The present shapes the future
The OCI’s push for standardization and the embrace of a collaborative, open-source community allowed containers to gain their foothold, Aniszczyk says. Competing technologies like Kubernetes existed before the OCI’s standardization drive, but the push for open standards afforded them greater freedom from Docker’s formats and protocols.
“The fact that users can easily switch between different cloud providers and registries is beautiful.”
“If you go back to the start of the whole container movement, if there were multiple different container formats still, you wouldn’t see the explosion of Kubernetes and all that ecosystem,” says Aniszczyk. “There would have been too much churn for a user to go fully into it. The fact that they can easily switch between different cloud providers and registries is beautiful, and it makes things easier.”
Estes adds, “Linux ushered in an era where it’s very common for everyone, from enterprises to startups, to build around open source.” The OCI extends that legacy, counting major players such as AWS, Google, IBM, Microsoft, Docker, and VMware among its members. By embracing open source and coalescing around OCI standards, creators of container technologies have charted a path toward the future—one where even tech giants adopt open-source ideals.
The OCI’s efforts are one reason why companies are leaping headfirst into developing products for the container ecosystem and contributing to open-source container projects, and plan to continue to do so long-term. Weaveworks, for example, offers commercial products and support for Kubernetes. “At the moment, you have a balance between the interests of end users who would love to have everything for nothing, and businesses that provide support for what the end users are doing,” Richardson notes. “A lot of the common components of the technologies that both these parties use are open source, but the workflows, activities, and outcomes are tied up with commercial transactions.”
The future will not be privatized
Aniszczyk and the OCI want to ensure the future of containers remains firmly planted in the open-source paradigm for years to come. Not content with heading off a potential standards arms race that risked derailing container adoption, the OCI is, at the time of writing, seeking to issue a new release of its image specification to make it more efficient. Looking ahead, Aniszczyk adds, “The runtime is standardized, the image spec is standardized, the distribution spec is standardized. Build spec is the last thing left, so there’s probably that [to do] over the next one or two years.”
The OCI director is hopeful that containers have a well-charted route forward—and that an open-source future means the community will avoid choppy waters.
“The overall story of containers is that we’ve modernized the industry to do open-source infrastructure using a set of good principles.”
“The overall story of containers is that we’ve modernized the industry to do open-source infrastructure using a set of good principles,” Aniszczyk says. “It started with containers, but it’s moving to whatever the next orchestrated workload is. Right now, Kubernetes is the de facto way to do it, but who knows what’ll happen down the line?”
Richardson is likewise curious about the path container technologies follow. “I don’t think I’m worried that open-source containers or Kubernetes are somehow going to become closed source,” he says. “But do the companies that are investing in and benefitting from Linux and Kubernetes have a long-term interest in continuing to do that?”
That question is crucial, he says, given containers’ role as “the infrastructural lingua franca of computing.” Currently, he estimates, there are between 20 or 30 million people who can write a software application—a number doubling every five years or so. “In 10 years’ time, there will be 100 or 150 million developers,” he says. “That means 75 percent of them haven’t even started yet. They don’t want to know about Kubernetes—they want to know how to write a fun app for their friends or business. They’re going to have a certain set of skills that aren’t deep in terms of engineering, but will be broad and valuable. All this [points to] a trend of [requiring] a better developer experience, and consequently, containers and the products around them need to align well to make that happen.” Ensuring containers continue to be widely used requires making them accessible—and a fragmented system with a high barrier to entry isn’t conducive to that.
Whichever way the computing world turns, those at the heart of the ecosystem believe containers’ future is resolutely open source. As Aniszczyk puts it: “All this technology will be open source, for sure. I think the cat is out of the bag now for infrastructure.”