description runc Overview
Working close to the Linux kernel, runc creates and runs containers described by the Open Container Initiative runtime specification. It uses kernel features such as namespaces to separate process environments and cgroups to control resource use. Its narrow role makes it a building block for container systems rather than a complete platform for packaging, distributing, or coordinating applications. Developers and system administrators encounter runc when they need to understand or control how a container process starts and runs.
Higher-level software can use it beneath image management and scheduling tools. The distinction is useful: runc handles the execution boundary, while other components supply the surrounding workflow. It suits runtime development and investigations that require close attention to Linux isolation behavior.
help runc FAQ
What does runc do that Docker does not do directly?
runc is the low-level OCI runtime that actually creates a container process using Linux namespaces and cgroups. Docker, containerd, and Kubernetes stacks sit above runtimes like runc and hand them an OCI runtime bundle to execute.
Is runc the same thing as containerd?
No. containerd manages images, snapshots, and container lifecycle at a higher level, while runc is the smaller tool that starts and manages the container process itself.
Why do people mention runc when talking about OCI?
runc is the reference implementation of the OCI Runtime Specification. The Open Container Initiative was launched in 2015 to standardize container formats and runtime behavior across tools.
What are common alternatives to runc?
crun is a popular C-based OCI runtime that is often used for lower memory overhead. gVisor's runsc and Kata Containers take a different approach by adding stronger isolation boundaries than a standard runc container.
explore Explore More
Reviews & Comments
Write a Review
Be the first to review
Share your thoughts with the community and help others make better decisions.