BuildKit vs LXD
BuildKit
github.comLXD
canonical.comSide by side
| Figure | BuildKit | LXD |
|---|---|---|
| Price from | Free | $2.08/mo |
| Free plan | Yes | Yes |
| Free trial | — | Yes |
| Open source | — | — |
| Web | — | Yes |
| Windows | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 4 |
| Spec score · Container Engines | 8.9 (#2) | 8.3 (#7) |
| Integrations | BuildKit documentation lists integrations or usage with Podman, nerdctl, Kubernetes, Docker buildx, GitHub Actions cache, S3 cache, Azure Blob Storage cache, and OpenTelemetry. | LXD integrations are available for Juju, MAAS, Ansible, Terraform, Puppet Bolt, and Packer. |
Plans
LXD
- LXD open sourceFree
- Ubuntu Pro PersonalFree
- Ubuntu Pro Enterprise workstation$25 a year
- Ubuntu Pro Enterprise server$500 a year
In their own words
BuildKit
BuildKit is a free toolkit for turning source code into build artifacts. It consists of the buildkitd daemon and buildctl client, and uses LLB, a binary format for describing process dependency graphs. Builds can use Dockerfiles or other LLB-compatible frontends, resolve dependencies concurrently, cache instructions, import and export caches, run nested jobs, and collect unused data automatically. BuildKit supports execution without root privileges and OCI (runc) or containerd workers. Results can be exported as images, local directories, tarballs, Docker tarballs, or OCI tarballs. Cache options include inline, registry, local-directory, and GitHub Actions backends; the README marks GitHub Actions, S3, and Azure Blob options experimental. The daemon provides a gRPC API over a Unix socket by default, with TCP sockets also supported. Binaries are available for Linux, macOS, and Windows. The unofficial Homebrew formula for macOS omits buildkitd; the project gives Lima in a Linux virtual machine as one way to run it. BuildKit is licensed under Apache-2.0.
LXD
LXD is an open-source platform for managing system containers and virtual machines on Linux. It brings LXC-based containers and KVM-based virtual machines together, with images for many Linux distributions and Windows virtual machines. Management options include a command line, REST API, web UI and third-party tools; the same HTTP API supports local and remote access. An official web UI is available by default starting with LXD 5.21.0 LTS. Features include resource limits, scheduled and expiring snapshots, projects, hardware passthrough, live migration and advanced networking. Containers run unprivileged by default, and virtual machines support UEFI Secure Boot and vTPM. LXD can run from a laptop to a data-center deployment; documentation describes clusters of up to 50 servers with thousands of instances. LXD is free, with the open-source plan listed at free. Ubuntu Pro Personal is also free for up to five physical Ubuntu systems. Enterprise workstation and server subscriptions are $25 a year and $500 a year, respectively.