Put open source to work
July 16–17, 2018: Training & Tutorials
July 18–19, 2018: Conference
Portland, OR

Immutable infrastructure: Continuous delivery for systems

Justin Cormack (Docker), Rolf Neugebauer (Docker)
11:00am11:40am Thursday, July 19, 2018
Evolutionary architecture
Location: Portland 251
Level: Intermediate
Average rating: ****.
(4.25, 4 ratings)

Who is this presentation for?

  • Ops and DevOps engineers and architects

Prerequisite knowledge

  • Experience deploying Linux and using containers

What you'll learn

  • Understand why immutable infrastructure is an interesting pattern
  • Learn how to test and implement CI for OS images, manage state in immutable systems, and build Linux systems with LinuxKit


The idea of immutable infrastructure was initially popularized by Netflix in 2011, but it is not yet the standard way of deploying servers. We understand and use the build-test-deploy-repeat cycle for software (especially containers), but the underlying platforms are still very pet-like and modified in production.

Justin Cormack and Rolf Neugebauer detail the cultural and technical barriers to architectures based on immutable infrastructure. Along the way, they cover properties such as fast builds, taking a minute or so, and fast boot, which allow you to build and test a whole operating system within a CI pipeline. This makes continuous deployment of the entire software stack realistic, both in the cloud and on-premises.

Justin and Rolf then offer an overview of the LinuxKit open source project. LinuxKit is not a Linux distro. It’s a set of tools for customizing, building, testing, and running immutable Linux. It is built from containers, so it is very easy to use and modify, and is not designed to be prescriptive about your systems.

Photo of Justin Cormack

Justin Cormack


Justin Cormack is an engineer at Docker with an interest in making systems software more accessible and secure.

Photo of Rolf Neugebauer

Rolf Neugebauer


Rolf is a member of the technical staff at Docker. He is one of the maintainers of LinuxKit.