RancherOS strips Docker and Linux to the essentials

A new superminimal Linux in the vein of CoreOS, RancherOS uses Docker to run everything outside of the kernel itself

rancher cowboy hay bundles work

Docker influenced the way applications are packaged and delivered, but it's also shaping the way that OSes are being built.

First came CoreOS, with a bare-bones Linux system that did little more than run Docker containers at scale. Now comes an even more radically stripped-down incarnation of the same idea: RancherOS.

If CoreOS is lean, RancherOS qualifies as downright puritan. It consists of almost nothing more than the Linux kernel running the Docker 1.5 daemon as its first process and a few crucial system services in Docker containers. An ISO of the entire core distribution weighs in at a mere 20MB.

In a blog post, Darren Shepherd, co-founder of Rancher Labs, describes how RancherOS's nothing-but-the-basics design addresses two major issues he noticed when working with Docker. The first was that Docker delivers upgrades on a two-month release cycle, so he wanted to be able to use the most cutting-edge version of Docker without waiting for it to land in the repository of one's Linux of choice. The other reason was to have a Linux distribution that played well with Docker from the inside out.

With RancherOS, "we run absolutely everything in a container, including system services," Shepherd says. A system-level instance of Docker runs atop the kernel and manages said system services, while another instance of Docker is set aside for user-level containers. The few system services that exist are mainly for absolutely indispensable items, such as networking and the Linux kernel device manager.

One of the other major features deliberately left out of RancherOS is systemd, the startup subsystem that has sharply split the Linux community over its design.

"Systemd cannot effectively monitor Docker containers due to the incompatibility with the two architectures," Shepherd claims, and "Rocket [CoreOS's competing container system], as it stands today, is largely a wrapper around systemd."

Systemd recently gained the ability to pull and run Docker container images directly. In Shepherd's view this implies that systemd's developers are "more interested in subsuming container functionalities in systemd than improving interoperability with Docker."

When CoreOS appeared, it inspired Matt Asay to describe it as "an existential threat to Linux vendors," since it leveraged containers to deliver a radically different approach to system management. Rather than push other Linux vendors entirely off the table, though, it's instead inspired them to make containers -- Docker, in particular -- a central part of their strategies.


Copyright © 2015 IDG Communications, Inc.

How to choose a low-code development platform