The Reality of Rootless Containers
summary
Rootless containers use user namespaces with a 100000+ UID range (typically 65,536 slots) so UID0 inside maps to an unprivileged host UID, and root is a set of capabilities not just UID0. Podman forks into a userns and uses IDMAP mounts in 5.12 to avoid FUSE copies; networking often goes through userspace (slirp4netns) but Podman’s pasta is much faster. Resource limits require cgroup v2 delegation required or limits become a silent noop; privileged ports blocked (<1024) and host data/secrets remain exposed despite reduced blast radius.
AI-written summary · about
chapters (12)
- 0:00Introduction to rootless containers
- 2:12Root is not UID zero
- 5:27Five parts of rootless setup
- 10:34UID mapping in rootless
- 12:00File system performance
- 13:44Cgroups v2 limitations
- 14:46Networking throughput issues
- 19:10Namespace creation demo
- 24:25Root vs rootless comparison
- 28:21Cgroups v1 silent failures
- 31:30What rootless fixes and misses
- 33:58Key takeaways and summary
related talks
38mUnderstanding root inside and outside a container
44mRootless containers
22mRun As “Root”, Not Root: User Namespaces In K8s
30mThe Route To Rootless Containers
40mRootless Containers with Podman
54mContainers unplugged: understanding user namespaces
19mRootless containers with Podman
32mThe Route To Rootless Containers
