Moments in
Container History

Container-based technology has experienced a recent revival and is becoming adopted at an explosive rate. For those that are new to the conversation, containers offer a way to virtualize an operating system. This virtualization isolates processes, providing limited visibility and resource utilization to each, such that the processes appear to be running on separate machines. In short, allowing more applications to run on a single machine. Here is a brief timeline of key moments in container history.

Moments in
Container History

Container-based technology has experienced a recent revival and is becoming adopted at an explosive rate. For those that are new to the conversation, containers offer a way to virtualize an operating system. This virtualization isolates processes, providing limited visibility and resource utilization to each, such that the processes appear to be running on separate machines. In short, allowing more applications to run on a single machine. Here is a brief timeline of key moments in container history.

Rocket

CoreOS released reference implementation of an open specification, standardizing the packaging of images and runtime environments for Linux containers.

Lmctfy

Open source version of Google's container stack. Applications can be made ‘container aware,’ creating and manage their own subcontainers.

LXC – Linux Containers

Provided userland tooling to take advantage of the cgroups and namespacing functionality in the Linux kernel.

Control Groups merged into Linux kernel

Process Containers were renamed Control Groups and merged into kernel version 2.6.24.

Open Virtuzzo (OpenVZ)

Released by Parallels (formerly SWsoft), code was not released as part of the official Linux kernel, but offered a wide array of features include resource managements and live migration.

Linux VServer

Operating System virtualization implemented by patching the Linux kernel. Experimental patches continue to be available, but the last stable patch was released in 2006.

Unix v7

Developed chroot system call, which provided process isolation. Chroot was added to BSD in 1982.

2014
2013
2013
2011
2008
2007
2007
2006
2005
2004
2001
2000
1979

Docker

Process isolation using kernel cgroups and namespaces, combined with tools to build and retrieve named images.

Cloud Foundry Warden

Initially an open source project at VMware, Warden developed a client-server model to manage a collection of containers across multiple hosts and includes a service to manage cgroups, namespaces and process life cycle.

AIX Workload Partitions (WPARs)

Released in AIX 6.1, allowed virtualization of an OS without creating a full LPAR on an IBM System.

Process Containers

Developed by Google (primarily Paul Menage and Rohit Seth) to aggregate processes within the Linux kernel for resource management.

Oracle Solaris Zones

Similar to jails, but Zones were able to leverage features like snapshots and cloning from ZFS.

FreeBSD Jails

Introduced jails, early container technology, developed by Derrick Woolworth (R&D Associates) then adopted by Poul-Henning Kamp.

Learn more

pivotal.io