Chapter 5. Beyond Docker: System Containers and Unikernels

Unless you were plugged in during the 2000s or earlier to one of the historical container projects discussed in Chapter 7 of this book, chances are that you never heard of software containers until Docker came along in 2013.

If that’s the case, you may also not be aware that Docker represents only one slice of the container landscape today. There are several other major container platforms out there that cater to entirely different use cases.

This chapter illuminates the container ecosystem in all of its diversity by discussing system containers and unikernels, technologies that complement but do not replace Docker.

System Containers

As noted in Chapter 1, Docker is designed primarily to be an application-container platform. While it is possible to run an entire operating system inside a Docker container, Docker is rarely used for that purpose in production environments.

But other container platforms were designed for the express purpose of hosting a complete operating system, rather than individual applications. These are called system containers.

Benefits of System Containers

Since traditional virtual machines can also host complete operating systems, system-container technology may seem redundant. Yet system containers offer a few important advantages compared to virtual machines. These include the following:

  • The ability for guest operating systems to access hardware on the host server directly. (Virtual machines ...

Get Enterprise Docker now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.