Spegel is a stateless cluster local OCI registry mirror that caches container images within a Kubernetes cluster without requiring explicit configuration.
The tool solves the problem of external registry unavailability, rate limiting, and slow image pulls by automatically mirroring OCI images to a local cache accessible to all nodes in the cluster. It operates statelessly, meaning it does not require persistent storage or complex setup, and uses peer-to-peer distribution to share cached images across cluster nodes. When a pod requests an image, Spegel intercepts the request and serves it from the local cache if available, falling back to external registries only when necessary.
Spegel is designed for home lab environments and individual contributor use cases rather than large-scale production deployments. It suits clusters that experience external registry downtime, face Docker Hub rate limits, or operate in edge environments where network efficiency matters. The project explicitly notes that it has an evolving API with no guaranteed support, and assistance is provided on a best-effort basis.
The project maintains a measured development pace with selective engagement on issues and pull requests. Releases occur at intervals, and the maintainers prioritize stability and core functionality over rapid feature expansion. The codebase remains focused on the stated use cases rather than attempting to serve all possible registry mirroring scenarios.