Skip to content

Releases: ligfx/k3d-registry-dockerd

v0.10

22 Jul 21:16

Choose a tag to compare

v0.9

20 Jul 17:58

Choose a tag to compare

  • Doesn't keep partial corrupted files when encountering errors writing manifests or blobs. copyToFile now first writes to a temporary file in the same directory as the destination, and then renames it to the actual destination filename only if the writes succeeds entirely. Solves #20 Inconsistent cache state on http error.
  • Doesn't ignore io.ErrUnexpectedEOF errors in copyToFile.
  • Supports pulling private images via secrets passed in from Kubernetes. Attemping to pull a non-existent image will now return a 401 instead of a 404 unless authorization credentials have been supplied. Authorization credentials are passed directly through to the Docker client. Solves #21 Support authenticated container registry.

v0.8

02 Mar 18:01

Choose a tag to compare

v0.7

31 Jan 18:41

Choose a tag to compare

  • Returns manifest matching digest instead of index.json when images are specified in domain/name@sha256:digest format. This would result in a container with a different reported imageID than the one specified.
  • Returns manifest list instead of index.json when images are specified in domain/name:version format. This would result in a container with a different reported imageID than what was visible in Docker.
  • Parses actual manifest mediaType from JSON and return it in the Content-Type header, rather than guessing.

v0.6

11 Nov 15:31

Choose a tag to compare

  • Supports images specified in domain/name@sha256:digest format (such as registry.k8s.io/ingress-nginx/controller@sha256:d5f8217feea...)

v0.5

29 Jul 20:39

Choose a tag to compare

  • Downloads multiple images in parallel, which improves cluster startup time. Uses golang.org/x/sync's singleflight package to coalesce multiple requests for the same image and ensure that downloads don't interfere with one another.
  • Logs errors when handling HTTP requests, rather than just sending them to the client. This makes it far easier to debug when things go wrong.
  • Correctly return errors when copying files to local cache
  • Improves error messages when trying to communicate with the Docker daemon by including JSON content that failed to unmarshal in the error message
  • Lower required Docker engine API version to v1.44 from v1.45. This seems to correspond with the earliest engine version that supported fully-OCI-compliant image export.
  • Bugfix: close HTTP request bodies correctly

v0.4 - Now written in Go

26 May 03:06

Choose a tag to compare

  • Rewrote the whole thing in Go. It seems much faster! And this opens up possibilities of handling requests in parallel, as well (currently limited to one request at time, since otherwise you get a thundering herd of calls to the Docker API). Maybe one day this could get integrated into k3d itself
  • Allow image names that don't have a slash in them. Useful if you're using any raw base images for your pods, e.g. golang:1.22.3-alpine3.20 or alpine:3.20.0.

v0.3

26 May 02:45

Choose a tag to compare

  • Fix error "Not supported URL scheme http+docker" by updating Python requirement docker from 7.0.0 to 7.1.0

v0.2

25 May 16:14

Choose a tag to compare

  • Fix for #2. This allows you to use k3d-registry-dockerd with locally-built development images that may change content without changing their version.

v0.1

27 Feb 19:48

Choose a tag to compare

v0.1