As everyone slowly shrugs off their holiday cheer and emerges, shivering and blinking into the cold light of January, the time is ripe for a host of predictions for the year ahead. One thing that we’re fairly confident about: it’s a fairly safe bet that Docker is going to continue its reign at the top of the tree for another year at least. And it seems we’re in good company with this prediction.
Last year, many people interpreted Joyent’s open-sourcing of their code as a direct challenge to the PaaS bothering container technology. However, in a December interview, Bill Fine, speaking on behalf of Joyent, told us that the company is “working with Docker, not against them.” To this end, the Joyent Container Service has been lined up to provision and manage Docker hosts and containers in the Joyent Public Cloud. With this service in place, users will benefit from a security gateway, private registries and integrated logging, and monitoring of Docker containers and hosts.
Security has been a particular sticking point for Docker – although Joyent CTO Bryan Cantrill insists that issues with the container are, for the most part, intrinsically linked to Linux, not Docker itself. Nonetheless, it was ammunition enough for CoreOS to claim that the Docker security model is flawed when they announced ‘Rocket’ – a prototype rival to the container tech last month.
Moreover, CoreOS claim that Rocket will fix what it views as ‘terminal’ issues with Docker: namely the fact that it’s gone from being a “simple composable building block” to become an “unwieldy” juggernaut of a platform.
Fine is philosophical about CoreOS’ chances of toppling the Docker momentum, commenting that, “One of the great things about Docker is that the entire IT community is rallying around a common standard for the definition of an application container. The Rocket App Container Image is an alternative to the emerging Docker standard.” In his belief, the momentum behind Docker is “too strong for Rocket to replace it as the standard for defining an application container.”
As Docker has grown, it’s evolved from a mere technology into something that Fine likens to a “movement.” Whilst Joyent recognises some of the need to address “limitations” in Docker – namely, the default Docker run-time, the company favours collaborating with the DotCloud juggernaut by extending the Docker Engine to Joyent SmartDataCenter, as opposed to all out warfare. Or as Fine puts it, “blow it up and start a fork of sorts, as Rocket seems to be doing.”
To Fine, the Docker API is fundamentally sound, and moreover, Joyent are “confident” that by leveraging this API, the Docker ecosystem will “continue to expand, flourish, and unlock innovation for developers everywhere.” As he concludes, ultimately, Docker – and more broadly – any open source project similarly rooted in a strong community, with shared interests – will always “carry the day.”
Inevitably, open source is by nature going to encourage forks at some point. As the warders of Node.js, Joyent are especially aware of this, having seen a major new faction emerge last year in the form of io.js. In Docker’s case however, Alex Polvi, CEO of CoreOS, argues that a simple fork wouldn’t have been viable.
As he told Voxxed, “We got together with companies such as Mesosphere and Cloud Foundry/Pivotal to discuss what a standard container spec would look like, which is what the App Container Spec is. Rocket is the first implementation of the spec. Since we have security in mind for large enterprise companies, it made sense to build it rather than forking docker.”
Whilst at first glance Rocket could seem like it’s being pivoted as an outright Docker alternative, Polvi isn’t above adopting Joyent’s stance of collaboration, citing his hopes that in the future, Docker will also adopt the App Container specification so that Rocket and Docker could be interoperable (well, once Rocket makes it to the general market – as of now, the technology is only two months old).
As Docker matures, Polvi sees it more lining up to compete with “Kubernetes, Mesosphere and other platforms.” He adds that, “For companies looking to build platforms on top of their legacy systems (instead of using a plug and play platform, which Docker is becoming)” developing Rocket, and other app container spec implementations,” makes “a lot of sense.”