mirror of
https://github.com/imjasonh/kontain.me
synced 2026-07-08 09:04:54 +00:00
1.5 KiB
1.5 KiB
kontain.me serves Docker container images generated on-demand at the time they are requested.
These include:
random.kontain.me, which serves randomly-generated images.mirror.kontain.me, which pulls and caches images from other registries.flatten.kontain.me, which pulls and flattens images from other registries, so they contain only one layer.ko.kontain.me, which builds a Go binary into a container image usingko.buildpack.kontain.me, which builds a GitHub repo using CNCF Buildpacks.
This repo also serves viz.kontain.me, which visualizes shared
image layers using Graphviz.
Caveats
- The registry does not accept pushes.
- This is a silly hack and probably isn't stable. Don't rely on it for anything serious.
- It could probably do a lot of smart things to be a lot faster. 🤷
How it works
The service is implemented using Google Cloud Run.
When the service receives a request for an image manifest, it parses the
request and generates layers for the requested image, writing the blobs to
Google Cloud Storage. After it receives
the manifest, docker pull fetches the blobs. The app simply redirects to
Cloud Storage to serve the blobs. Blobs are deleted after 24 hours and would be
rebuilt on the next request.