Linux Containers
lastmod 2026-03-25created 2016-05-0610 edits
LXC (LinuX Containers) is an operating-system-level virtualization method for running multiple isolated Linux systems (containers) on a single control host. The Linux kernel leverages cgroups to allocate resources (CPU, memory, block I/O, network, etc.) without needing to start a virtual machine. Cgroups also provide namespace isolation to completely isolate the operating environment from the application's point of view, including the process tree, network, user IDs, and mounted file systems. LXC combines cgroups and namespaces to provide an isolated environment for applications. Docker can also use LXC as one of its execution drivers, and through it provides image management and development services.
Categories
- LinuxContainers:Network (Container:Network) -> merged into Docker:Network.
About Linux containers (concept)
- [Recommended] Linux containers in 500 lines of code (2016) 1 - C code; introduces the basic mechanisms needed to build a Linux container and explains the implementation (Namespaces, Capabilities, cgroups , setrlimit, Mounts, System calls)
- [Recommended] What is a container? Linux process isolation | 44BITS 2
- Barco - Linux containers coded from scratch in C | GeekNews - Open source under development to learn more about the Linux kernel and containers
- Github - lucavallin/barco - Linux containers from scratch in C
- namespaces : Used to group kernel objects so that a specific process tree can access them. There are different kinds of namespaces, such as PID and network
- seccomp : Used to restrict the system calls a process makes
- capabilities : Used to restrict what uid 0 (root) can do
- cgroups : Used to limit the resources a process can use (memory, disk I/O, CPU time, etc.)
See also
- KVM
- Docker
- Containerization - A Swift package for running Linux containers on macOS
- Apptainer - Application containers for Linux
- Dozzle - Real-time container log viewer
Favorite site
- Wikipedia (en) LXC
- Linux Containers - LXC - Getting started
- A look at LXC, Docker, and Linux container technologies