1
0
Fork 0
mirror of https://github.com/imjasonh/kontain.me synced 2026-07-08 00:55:14 +00:00
No description
Find a file
2021-05-26 16:28:25 -04:00
.github Fix dumb 2021-05-26 16:28:25 -04:00
cmd document wait 2021-04-09 12:38:33 -04:00
pkg support HEAD for the rest of them 2021-01-28 22:15:53 -05:00
.gitignore add tfstate 2021-02-02 19:23:45 -05:00
.ko.yaml
.terraform.lock.hcl add .terraform.lock.hcl 2021-01-28 21:48:23 -05:00
deploy.sh add services variable, update terraform 2021-01-28 21:18:16 -05:00
go.mod Merge pull request #21 from imjasonh/dependabot/go_modules/github.com/google/go-containerregistry-0.5.1 2021-05-26 16:23:41 -04:00
go.sum Merge pull request #21 from imjasonh/dependabot/go_modules/github.com/google/go-containerregistry-0.5.1 2021-05-26 16:23:41 -04:00
kontainme.tf add services variable, update terraform 2021-01-28 21:18:16 -05:00
LICENSE
README.md document wait 2021-04-09 12:38:33 -04:00
terraform.tfstate better support registries in flatten and mirror 2021-04-09 12:30:21 -04:00
terraform.tfstate.backup better support registries in flatten and mirror 2021-04-09 12:30:21 -04:00
test.sh md5ify cache keys 2021-01-02 10:33:12 -05:00

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

These include:

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. 🤷
  • Blobs and manifests are cached for 24 hours wherever possible, but will be rebuilt from scratch after that time.

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 manifest and blobs to Google Cloud Storage. After it receives the manifest, docker pull fetches the blobs. The app simply redirects to Cloud Storage to serve manifests and blobs.