Bootc is a Rust-based project that enables transactional, in-place operating system updates using OCI and Docker container images as the transport and delivery format for base operating system updates. Rather than treating containers solely as an application deployment mechanism, bootc applies the layered container model to bootable host systems themselves, allowing Linux distributions and system operators to package complete operating system images including kernels and userspace components in standard container formats.
The project's core innovation lies in its approach to system updates. A bootc container image includes a Linux kernel, typically stored in locations like /usr/lib/modules, which is used to boot the target system. Importantly, the base userspace does not run inside a container by default at runtime. Instead, standard init systems like systemd operate as pid1 in the traditional manner, with no outer container process wrapping the system. This design preserves conventional system architecture while leveraging container technology for distribution and versioning.
Bootc is classified across numerous system-level categories including booting, boot loaders, system startup, Linux initialization, OCI compliance, kernel modules, initramfs handling, and systemd integration. The project also intersects with container runtimes including runc, containerd, podman, and cri-o, reflecting its position at the intersection of container technology and operating system infrastructure. Its domain classification includes microservices and Kubernetes contexts, indicating adoption patterns beyond traditional server deployments.
The project maintains a stable CLI and API, with a commitment to seamless in-place upgrades across future versions. Version numbering follows semantic versioning standards beginning with version 1.2.0. The project is not distributed as a library on crates.io but maintains version discipline nonetheless. Bootc itself is distribution-agnostic, functioning as a client-side tool that works across different Linux distributions and operating systems. The project directs users to an ADOPTERS.md file for information about base images and end-user implementations.
Community engagement is substantial and well-organized. GitGenius tracking shows 544 total issues and pull requests with a median response latency of 0.8 hours and a mean latency of 685.5 hours, indicating rapid initial triage followed by variable resolution timelines. The most active labels are triaged with 131 occurrences, enhancement with 113, and area/install with 94. Primary contributor cgwalters has generated 1721 tracked events, with jeckersb and henrywang contributing 125 and 89 events respectively. The project maintains overlapping contributors with microsoft/vscode, rust-lang/rust, and podman-desktop/podman-desktop repositories.
Bootc operates as a Cloud Native Computing Foundation Sandbox project and adheres to the CNCF Community Code of Conduct. The project hosts recurring community meetings on CNCF Zoom each Friday at 15:30 UTC, maintains a GitHub discussion forum for asynchronous communication, and operates a live chat channel on CNCF Slack. The project is tightly related to the Fedora and CentOS bootc initiatives, with shared community spaces including Matrix channels and weekly video calls. Comprehensive governance, contribution, and maintainer documentation is available in the repository.