Docker Buildx is a Docker CLI plugin that extends the native `docker build` command with advanced BuildKit capabilities. It provides a rich command surface for multi-platform builds, declarative bake files (HCL/JSON/Compose), cache management, image attestations and provenance, policy-based source verification (OPA/Rego), and interactive debugging via a Debug Adapter Protocol (DAP) server. The architecture is driver-based, supporting local Docker, Docker containers, Kubernetes, remote TCP/Unix sockets, and a cloud driver. The codebase is written in Go and follows a modular structure with clear separation between CLI commands, build orchestration, driver implementations, policy evaluation, and utility packages. It includes an extensive integration test suite and CI pipelines that test across multiple BuildKit and Docker versions.
Unregistry is a lightweight OCI-compliant container registry that stores images directly in the local containerd content store. It is designed as a simpler alternative to a full Docker registry, primarily for pushing images to remote Docker daemons over SSH without an external registry. The project includes a Go server binary (cmd/unregistry/main.go) that implements the OCI distribution specification using the Docker Distribution library as a framework, with custom middleware that backs blob, manifest, and tag operations with containerd's content and image stores. A companion Bash script, docker-pussh, acts as a Docker CLI plugin to orchestrate pushing images: it establishes an SSH tunnel to a remote host, starts an ephemeral unregistry container, forwards ports, performs a standard docker push, then cleans up. The codebase is well-structured with clean abstractions, comprehensive error handling, and extensive test coverage including conformance tests against the OCI distribution spec and end-to-end tests using Docker-in-Docker containers. The storage layer in internal/storage/containerd demonstrates a solid pattern for integrating containerd with the distribution registry, handling leases, garbage collection labels, and resumable uploads. The project is actively maintained with recent commits and a responsive issue tracker.