A simple yet powerful container registry with batteries included.
summ fully supports the OCI Distribution Spec and adds the practical things a registry should have had all along, so it is useful the moment it starts.
- Pull counts, per day and per hour — a thirty-day contribution grid and a last-24-hours strip for every repository, tag and manifest. Counting costs the pull path nothing.
- Tag history — every tag mutation recorded since the first push. Ask what a tag has pointed at over time, or what a manifest has ever been called. Deleted tags still answer.
- A built-in web UI — same binary, same port, assets compiled in. No build step, no framework, no CDN, works air-gapped.
- Fast where it counts — a metadata schema designed for discovery rather than transfer, over RocksDB. Measured: 7.42 GiB pushed at ~1.0 GB/s, pulled back from four concurrent clients at ~1.1 GB/s aggregate.
- Discovery as a first-class API — repositories, tags, manifests, history and pull counts as a flat, cursor-paged, read-only surface built for 10M repositories.
- One binary, no dependencies — RocksDB statically linked. No database, no
object store, no sidecar.
./summ serveis the whole deployment. - Conformant — the OCI
distribution-specconformance suite passes with zero failures at every profile, including the OCI 1.1 referrers API.
curl -fsSL https://github.com/summcr/summ/releases/latest/download/summ-x86_64-unknown-linux-gnu.tar.gz \
| tar -xz summ
./summ serveWritten in Rust. Apache-2.0 licensed.