awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
moby avatar

moby/buildkit

0
View on GitHub↗
10,061 stars·1,435 forks·Go·Apache-2.0·35 viewsgithub.com/moby/moby/issues/34227↗

Buildkit

Buildkit is a programmable container build toolkit and OCI container image builder that converts build definitions into concurrent dependency graphs for image construction. It functions as an OCI image distribution engine, capable of generating container images and exporting artifacts to local storage or remote registries.

The project is distinguished by its use of a low-level binary intermediate representation to decouple high-level build languages from the execution engine. It supports multi-platform image builds through user-mode architecture emulation and provides a distributed build cache manager to accelerate cycles by storing intermediate layers across registries or cloud storage.

The system covers a broad range of capabilities including directed-acyclic-graph execution, content-addressable cache storage, and reproducible build pipelines that standardize timestamps and pin dependency versions. It also includes observability features for build performance tracing and telemetry via OpenTelemetry, as well as security primitives such as mutual TLS transport and rootless execution.

Buildkit can be deployed as a standalone daemon or as a Kubernetes-native build daemon within a cluster.

Features

  • Container Image Builders - Functions as a programmable OCI-compliant builder that assembles filesystem layers into distributable images.
  • OCI Container Engines - Implements an OCI-compliant engine for building and distributing container images.
  • Graph Definitions - Provides a programmable client for defining build processes as protobuf-based dependency graphs.
  • Build Orchestrators - Orchestrates the build process by generating a binary definition that manages operations and concurrency.
  • Cross-Platform Build Targets - Manages the hardware architectures and operating systems supported by the build engine for multi-platform image creation.
  • Distributed Layer Cache Managers - Manages a distributed cache of intermediate image layers across registries and cloud storage to accelerate builds.
  • Build Execution Engines - Acts as a build execution engine that runs commands and scripts within containerized environments.
  • Build Pipelines - Structures build operations as an automated pipeline to manage complex dependencies and execution sequences.
  • Build Execution Backends - Implements the backend execution layer that processes build dependency graphs into actual container image layers.
  • Container Build Orchestrators - Functions as a centralized build infrastructure that can be hosted remotely via TCP or Kubernetes.
  • Container Build Tools - Provides a comprehensive toolkit for defining build graphs and executing containerized processes across architectures.
  • Container Command Execution - Executes build commands inside containers with custom arguments, environment variables, and user permissions.
  • Image Generation - Provides a programmable engine to execute build processes and generate OCI container images.
  • Container Image Registry Uploads - Pushes built images to remote registries with configurable compression and metadata.
  • Build Layer Caching - Accelerates build cycles by storing and retrieving intermediate image layers across registries or cloud storage.
  • Multi-Architecture Images - Generates container images compatible with multiple CPU architectures and operating systems in a single process.
  • Build - Uses a low-level binary intermediate representation (LLB) to separate build definitions from the execution engine.
  • Directed Acyclic Graph Engines - Models the build process as a directed acyclic graph to execute independent operations concurrently.
  • Content-Addressable Caches - Implements a content-addressable cache to store and retrieve intermediate build layers based on input hashes.
  • Distributed Caches - Uses consistent hashing to distribute build tasks across cluster nodes and maximize local cache reuse.
  • Build-Time Mounts - Manages various mount types including bind, secret, SSH, and cache mounts for build processes.
  • Cache Integrity Verification - Validates the integrity of remote caches using signatures and timestamp thresholds.
  • Version Pinning Tools - Constrains external images and sources to specific versions to maintain build consistency and reproducibility.
  • Deterministic Build Metadata - Ensures reproducible builds by setting constant Unix timestamps for image metadata.
  • Container Engine Configurations - Configures the runtime shim and operational behavior of the underlying container engine used during image construction.
  • Intermediate Representation Translators - Converts standard Dockerfile instructions into a low-level binary intermediate representation for precise build execution.
  • Image Assembly Stabilization - Stabilizes image layer assembly logic to ensure consistent outputs regardless of the build engine version.
  • In-Cluster Build Daemons - Operates as a container-native build engine deployed within Kubernetes for scalable image construction.
  • Kubernetes Deployments - Enables the deployment of the build engine as a scalable workload within Kubernetes clusters.
  • gRPC Interfaces - Utilizes gRPC interfaces for high-performance communication between the build client and the daemon.
  • User-Mode Emulation - Employs user-mode emulation to run binaries for foreign CPU architectures during multi-platform builds.
  • Build Provenance Attestors - Stores build definition parameters and provenance data to ensure supply chain transparency.
  • Non-Root Container Execution Environments - Provides a rootless execution mode that runs the build daemon under a standard user account to enhance security.
  • Mutual TLS Transports - Secures traffic between the build client and daemon using mutual TLS certificates.
  • Transport Layer Security - Secures communication between clients and the build daemon using mutual TLS certificates.
  • Cache Garbage Collection - Manages disk usage by setting space limits and retention durations for cached image layers and build artifacts.
  • Consistent Hashing - Uses consistent hashing to route build requests to specific daemons, maximizing local cache reuse.
  • Reproducible Builds - Ensures bit-for-bit identical image outputs by standardizing timestamps and pinning dependency versions.
  • TCP Listeners - Exposes the build engine via a secure TCP listener to allow remote clients to trigger builds.
  • Build Performance Metrics - Records timing and logs of individual build steps into trace files for performance analysis.
  • Cache Hit Optimizations - Optimizes cache hit rates by merging copy chains and handling git sources directly.
  • Image Builders - Concurrent and cache-efficient builder toolkit.

Star history

Star history chart for moby/buildkitStar history chart for moby/buildkit

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Buildkit

These projects share indexed features with Buildkit. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • earthly/earthlyearthly avatar

    earthly/earthly

    12,035View on GitHub↗

    Earthly is a containerized build system and Docker build framework designed for creating reproducible build pipelines. It ensures environment consistency by executing every build step inside an isolated container, combining the isolation of container images with dependency tracking and parallel execution. The system differentiates itself through a focus on hermeticity and multiplatform support, allowing for the generation of container images targeting multiple CPU architectures within a single execution flow. It maintains a hermetic build environment by isolating network access and utilizing

    Gobuildbuild-automationbuild-system
    View on GitHub↗12,035
  • containers/buildahcontainers avatar

    containers/buildah

    8,618View on GitHub↗

    Buildah is a tool for creating OCI-compliant container images without requiring a background daemon process. It functions as a daemonless image constructor and distribution tool, allowing users to build, push, and pull images between local storage and remote registries. The project distinguishes itself by supporting unprivileged image building through the use of user namespaces and rootless mode. It enables direct modification of container root filesystems by mounting them to the host, allowing images to be treated as directories that can be manipulated via standard shell commands or scripts.

    Gocontainercontainer-imagecontainers
    View on GitHub↗8,618
  • ko-build/koko-build avatar

    ko-build/ko

    8,455View on GitHub↗

    Ko is a daemonless container image builder and OCI image generator specifically for Go applications. It compiles Go source code into binaries and packages them directly into container images, pushing them to registries without requiring a local container runtime or daemon. The tool specializes in multi-platform image distribution, producing images for various CPU architectures and operating systems from a single execution. It distinguishes itself by automating the entire pipeline from Go import paths to Kubernetes deployment or serverless function packaging for architectures like AWS Lambda.

    Gocontainercontainersdeploy
    View on GitHub↗8,455
  • googlecontainertools/kanikoGoogleContainerTools avatar

    GoogleContainerTools/kaniko

    15,776View on GitHub↗

    Kaniko is an OCI container image builder that executes Dockerfiles in userspace without requiring a privileged daemon. It is designed as a Kubernetes-native image builder, allowing for the construction and pushing of images to registries from within a cluster or container. The tool ensures reproducible build generation by stripping timestamps from image layers, guaranteeing that identical source inputs produce the same image identifier. It supports multi-architecture image building, allowing for the creation of images compatible with various hardware and operating systems from a single proces

    Go
    View on GitHub↗15,776
Compare all 30 related projects→

Frequently asked questions

What does moby/buildkit do?

Buildkit is a programmable container build toolkit and OCI container image builder that converts build definitions into concurrent dependency graphs for image construction. It functions as an OCI image distribution engine, capable of generating container images and exporting artifacts to local storage or remote registries.

What are the main features of moby/buildkit?

The main features of moby/buildkit are: Container Image Builders, OCI Container Engines, Graph Definitions, Build Orchestrators, Cross-Platform Build Targets, Distributed Layer Cache Managers, Build Execution Engines, Build Pipelines.

Which projects share features with moby/buildkit?

Projects with overlapping indexed features include: earthly/earthly — Earthly is a containerized build system and Docker build framework designed for creating reproducible build pipelines.… containers/buildah — Buildah is a tool for creating OCI-compliant container images without requiring a background daemon process. It… ko-build/ko — Ko is a daemonless container image builder and OCI image generator specifically for Go applications. It compiles Go… googlecontainertools/kaniko — Kaniko is an OCI container image builder that executes Dockerfiles in userspace without requiring a privileged daemon.… ninja-build/ninja — Ninja is a low-level build system and executable designed to function as a backend for higher-level build generators.… rust-lang/cargo — Cargo is the official build system and package manager for the Rust programming language. It provides a unified…