In my [[Docker Swarm]] clusters, each node also participates in a [[Ceph]] cluster for shared storage. Although Ceph facilitates storage sharing across nodes, it doesn’t automatically share [[Docker]]-specific data like container images. This setup requires each node to pull container images individually, leading to inefficiencies. ^13d4e1 For larger images, this results in wasted bandwidth on each node, delays during container restarts across nodes, and additional disk space usage. To optimize this, I deploy an official [Registry as a pull-through cache](https://docs.docker.com/docker-hub/mirror/), using shared storage for the registry cache. This setup ensures only one copy of each container image is stored, allowing all nodes to pull from the local cache. This approach enhances service availability during restarts and supports the proactive cleanup of unused images. ^623329 The registry mirror runs as a Swarm stack.