Skip to content
Latchkey

Dagger cache volume "no space left on device" in CI

The Dagger Engine keeps a layer cache and persistent cache volumes on disk. On a CI runner with a small volume, these can fill up mid-run, and a step fails with "no space left on device".

What this error means

A step fails with "write ...: no space left on device" or the engine reports the cache volume is full during an otherwise valid pipeline.

dagger
Error: input: container.withExec: failed to solve: write /var/lib/dagger/... : no space left on device

Common causes

The engine cache grew past the disk

A long-lived engine accumulates cached layers and cache volumes that are never pruned, exhausting the disk.

Large cache volumes on a small runner

Persistent cache volumes for dependencies can grow large and outstrip a modest runner disk.

How to fix it

Prune the engine cache

Reclaim space by pruning the Dagger Engine's build cache.

Terminal
dagger core engine local-cache prune

Free disk and reset volumes

  1. Remove unused preinstalled tooling to reclaim runner space.
  2. Prune the engine cache between jobs on persistent runners.
  3. Reset oversized cache volumes when they stop paying off.
Terminal
docker exec dagger-engine buildctl prune

How to prevent it

  • Prune the engine cache on persistent runners.
  • Bound cache volume growth for large dependency sets.
  • Use runners with enough disk for the cache.

Frequently asked questions

What causes "Dagger "no space left on device""?
A long-lived engine accumulates cached layers and cache volumes that are never pruned, exhausting the disk.
How do I fix Dagger "no space left on device"?
Reclaim space by pruning the Dagger Engine's build cache.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card