In this session, we'll explore the different Linux primitives that are commonly used in implementing container runtimes. Starting with Docker containers and moving down through the stack, we'll cover the underlying Linux primitives like cgroups, namespaces, and union filesystems, as well as how OCI runtimes like runc use them. We'll also discuss alternative container runtimes like CRI-O, rkt, and systemd-nspawn and what makes them different. This will be an interactive session with a live demo and open questions.