feat: serve local docker repos as a real registry #103
Reference in New Issue
Block a user
Delete Branch "benvin/local-docker-registry"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
Local
dockerrepos had no write path — the/v2Docker Registry API only proxied to upstreams. This makes a local docker repo a genuine container registry sodocker push/docker pull(and podman/skopeo/buildah) work against it directly, matching the project principle that a local repo is the real thing rather than a mirror.Changes
tags/list, and blob/manifest GET/HEAD.local_filesreference per (repo, image) so the GC does not reap them. Tags are mutable (UpsertLocalFile); digests and blobs are immutable./v2reads to the local handler for local docker repos and fall through to the upstream proxy otherwise; writes are local-docker only.UpsertLocalFilefor mutable tag references.Verification
scripts/docker-e2e.shpasses, including the newTestLocalDockerPushPull.hello-world, pulled it back, loaded it into the docker daemon, and ran it successfully.