If RancherOS runs underneath Docker, then Rancher, which provides infrastructure components for using Docker in production, runs on top of and around it.
Round 'em up, gather 'em in
Rancher features resource management, networking between containers, service discovery, container load balancing, container health, and backup, all under one roof.
Many of these individual pieces have been tackled before by separate projects. Networking in particular has long been a Docker headache, even with Docker picking up the creators of a particular solution for future use. Rancher's idea is to gather multiple problems in one place as an open source (Apache-licensed) offering, and to provide a common management interface for them.
Rancher will also handle some issues that arise when using containers in production, such as management for service requests. A given service can be cloned, changed, then verified against its dependencies automatically by Rancher before having traffic redirected to it.
What Rancher doesn't bring to the table is at least as important as what it does. For example, Rancher has no replacement for Docker Compose, the native Docker system for creating applications from multiple, linked containers. Instead, Rancher works directly with Compose, as well as other tools built on top of Docker's native API (such as Kubernetes).
Before Docker, the deluge
Much of the work done with Rancher actually started before the birth of Docker, explained Rancher co-founder and vice president Shannon Williams in a phone call.
"While most people could implement a [private] cloud [in their organization]," he said, "there were two challenges. One was driving adoption of the cloud once it was in place; a lot of organizations would build these clouds and struggle to get the users to start using them...."
The other challenge that Rancher's customers faced, he said, were "underpowered" clouds compared to, say, Amazon, as most private clouds didn't offer the same degree of scale or evolve at the same pace as public offerings.
Rancher was developed in part as a response to that -- to allow an organization to create "a kind of container cloud," as Williams put it, not requiring a particular OS or other set of environmental conditions to work, but can be deployed on any Linux environment where containers are supported.
Building out the ranch
Rancher will likely appeal to those who have already deployed containers at scale and are discovering the hard way that containers alone -- or the stock Docker stack -- can't shepherd an application through production, end to end.
With any third-party Docker solution, the larger question typically becomes whether the options will in time fold into Docker itself, which has already happened in some cases. Sheng Liang, co-founder and CEO of Rancher Labs, feels this likely won't be the case with Rancher.
"[Docker] has its hands so full with establishing this overarching orchestration and management platform," via features like Swarm and Compose, he said. "I'm personally not worried that it is going to get into our level of features."
Likewise, Rancher will avoid replacing Docker's current user-facing functionality, such as the orchestration standards. Also, because Rancher deals with Docker at a high level, it's possible for other container formats to be supported if the need arises.