Skip to main content

Blobber

Blobber is a Go module and CLI for pushing and pulling arbitrary files to and from OCI container registries. It turns any container registry into a general-purpose storage medium.

Key Features

  • Works with any OCI registry - GitHub Container Registry, Docker Hub, AWS ECR, or your own
  • List files without downloading - See what's in an image before pulling
  • Stream individual files - Fetch only what you need, on-demand
  • First-class eStargz support - Efficient seekable compression for selective retrieval

Quick Example

# Push a directory to a registry
blobber push ./config ghcr.io/myorg/config:v1

# List files without downloading
blobber list ghcr.io/myorg/config:v1

# Stream a single file to stdout
blobber cat ghcr.io/myorg/config:v1 app.yaml

# Pull everything to a local directory
blobber pull ghcr.io/myorg/config:v1 ./output

Choose Your Path

CLI User

Use blobber from the command line to push and pull files.

Go Developer

Import blobber as a library in your Go applications.

Why OCI Registries?

Container registries offer compelling properties for file storage:

  • Existing infrastructure - Registries are already deployed everywhere
  • Built-in authentication - Leverage registry auth mechanisms
  • Immutability - Pin to digest for reproducible deployments
  • Versioning - Tag-based version management

Learn more in Why OCI Registries.