docuum
brew install docuum
v0.27.0
MIT
Perform least recently used (LRU) eviction of Docker images
10
30-day installs · #8525
60
90-day · #6827
262
365-day · #6668
700
★ GitHub stars · updated 2mo ago
Build dependencies
GitHub topics
docker
docker-images
lru-eviction
Links
- https://github.com/stepchowfun/docuum
- GitHub: stepchowfun/docuum
- Brew formula source: Formula/d/docuum.rb
Raw metadata
{
"aliases": [],
"alternatives": [],
"build_dependencies": [
"rust"
],
"categories": [],
"caveats": null,
"conflicts_with": [],
"dependencies": [],
"deprecated": 0,
"deprecation_reason": null,
"desc": "Perform least recently used (LRU) eviction of Docker images",
"disable_reason": null,
"disabled": 0,
"enrichment_fetched_at": "2026-06-20T23:37:04+00:00",
"first_seen": "2026-06-20T23:34:18+00:00",
"full_name": "docuum",
"github_default_branch": "main",
"github_last_commit_at": "2026-06-20T07:56:30Z",
"github_readme_excerpt": "# Docuum: LRU eviction of Docker images\n\n[](https://github.com/stepchowfun/docuum/actions?query=branch%3Amain)\n\n*Docuum* performs least recently used (LRU) eviction of Docker images to keep the disk usage below a given threshold.\n\nDocker\u0027s built-in `docker image prune --all --filter until=\u2026` command serves a similar purpose. However, the built-in solution isn\u0027t ideal since it uses the image creation time, rather than the last usage time, to determine which images to remove. That means it can delete frequently used images, which may be expensive to rebuild or time-consuming to pull.\n\nDocuum is ideal for use cases such as continuous integration (CI) workers, developer workstations, or any other environment in which Docker images accumulate on disk over time. Docuum works well with tools like [Toast](https://github.com/stepchowfun/toast) and [Docker Compose](https://docs.docker.com/compose/).\n\nDocuum is used by Netflix (on its production Kubernetes nodes) and Airbnb (on its CI fleet of 1.5k+ CI workers).\n\n## How it works\n\n[Docker doesn\u0027t record when an image was last used.](https://github.com/moby/moby/issues/4237) To work around this, Docuum listens for notifications via `docker system events` to learn when images are used. It maintains a small piece of state in a local data directory (see [this](https://docs.rs/dirs/3.0.2/dirs/fn.data_local_dir.html) for details about where this directory is on various platforms). That persisted state allows you to freely restart Docuum (or the whole machine) without losing the image usage timestamp data.\n\nWhen Docuum first starts and subsequently whenever a new Docker event comes in, LRU eviction is performed until the total disk usage due to Docker images is below the given threshold. This design has a few advantages over evicting images based on a fixed [time to live](https://en.wikipedia.org/wiki/Time_to_live) (TTL), which is what",
"github_repo": "stepchowfun/docuum",
"github_stars": 700,
"github_topics": [
"docker",
"docker-images",
"lru-eviction"
],
"homepage": "https://github.com/stepchowfun/docuum",
"homepage_og_description": null,
"homepage_og_image": null,
"homepage_title": null,
"installs_30d": 10,
"installs_365d": 262,
"installs_90d": 60,
"keg_only": 0,
"keg_only_reason": null,
"last_seen": "2026-06-20T23:34:18+00:00",
"license": "MIT",
"llm_generated_at": null,
"llm_model": null,
"name": "docuum",
"oldnames": [],
"one_liner": null,
"optional_dependencies": [],
"rank_30d": 8525,
"rank_365d": 6668,
"rank_90d": 6827,
"raw_hash": "3e6d138cc1a3ce11",
"recommended_dependencies": [],
"revision": 0,
"ruby_source_path": "Formula/d/docuum.rb",
"tap": "homebrew/core",
"test_dependencies": [],
"uses_from_macos": [],
"version_head": null,
"version_stable": "0.27.0",
"versioned_formulae": [],
"why_use_this": null
}