kontain.me serves Docker container images generated on-demand at the time they are requested.

random.kontain.me

docker pull random.kontain.me/random:latest serves an image containing random data. By default the image contains one layer containing 10 MB of random bytes. You can request a specific size and shape of random image. For example, random.kontain.me/random:4x100 generates a random image of 4 layers of 100 random bytes each.

ko.kontain.me

docker pull ko.kontain.me/[import path] serves an image containing a Go binary fetched using go get and built into a container image using ko.

For example, docker pull ko.kontain.me/github.com/google/ko/cmd/ko will fetch, build and (eventually) serve a Docker image containing ko itself. Koception!

NB: All Docker image references must be lowercase.

buildpack.kontain.me

docker pull buildpack.kontain.me/[ghuser]/[ghrepo]/[path/to/app]:[revision] serves an image fetched from source on GitHub and built using CNCF Buildpacks. Specifically, it uses the GCP buildpack builder

For example, docker pull buildpack.kontain.me/googlecloudplatform/buildpack-samples/sample-go:master fetches, builds and serves a sample Go app.

NB: All Docker image references must be lowercase.

The image tag can be a commit, branch or tag. The default, :latest, pulls the master branch.

mirror.kontain.me

docker pull mirror.kontain.me/[image] will pull the an image (if it can) and cache the manifest and layers. Subsequent pulls will, if possible, serve from the cache.

This acts as a simple registry mirror which can reduce the number of pulls from the original registry, in case they impose request limits or exorbitant bandwidth costs or latencies.

Caveats

The registry does not accept pushes of any kind. This is a silly hack and if it's at all reliable it's by accident. Don't rely on it for anything serious. It could probably do a lot of smart things to be a lot faster.

Source is available on GitHub.