About this project
crun is an OCI (Open Container Initiative) container runtime fully written in C, designed to be fast and have a low memory footprint. It conforms to the OCI Container Runtime Specifications. The project aims to provide an alternative to runc, which is written in Go, by leveraging C for lower-level operations and offering a library (libcrun) that can be embedded in other programs without requiring an external process for managing containers.
Key features include:
- High performance: crun is faster than runc and uses significantly less memory, as demonstrated by benchmarks running 100 containers sequentially.
- Low resource usage: It can run containers with very tight memory limits (e.g., 512k) that fail with runc.
- Library support: Can be built as shared libraries (libcrun) for integration into other applications.
- Static builds: Reproducible static binaries are available via Nix, and an Ansible role automates installation.
- Lua bindings: Provides a Lua binding for scripting.
Build dependencies are listed for major distributions (Fedora, RHEL/CentOS, Ubuntu, Alpine, Tumbleweed). The build process uses autotools (autogen.sh, configure, make).
Documentation is available in crun.1.md. Releases are signed and can be verified with GPG.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.