Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

The last couple of years have seen an increased interest in container-related technologies. When people speak of containers they usually mean process containers. They often view a container as being much more comparable to a single process than to a virtual machine. But this is not the only way that containers can be used. The features that the Linux kernel provides allow for much more, up to running a whole Linux system unmodified inside a single container. For the last couple of years the LXD team has worked on just that: making containers behave much more like a virtual machine. This talk is going to introduce the concept of a system container in depth and touch on some of the more challenging aspects one faces when containerizing a whole init system and not just a single process. We will also show how system containers allow you to do things like running other container runtimes like runC, Docker/Moby, and LXD inside them and allow for device passthrough for GPU and USB devices in a much easier way than actual virtual machines can.

Christian Brauner is a kernel and core developer and maintainer of the LXD and LXC projects. He works mostly upstream on the Linux Kernel and lower-level problems. He is strongly committed to working in the open, and a strong proponent of Free Software.