Introducing Dockhand LRU Registry
At BoxBoat we are always trying to accelerate DevOps processes for our customers – that's why we have lots of tooling around CI/CD, which you can find on our GitHub. We are excited to announce that we have added another tool to the boat - Dockhand LRU Registry
Modern CI/CD platforms typically have the option to utilize Kubernetes based build agents or runners to streamline builds allowing you to build on your Kubernetes clusters. This is a great way to leverage resources and have highly elastic, cost efficient, scalable build resources. However, out of the box this comes with a performance cost - transient Docker build agents do not have the benefit of a local Docker engine cache. This means building on the cluster is slow without some sort of external caching - enter the dockhand-lru-registry.
dockhand-lru-registry is a lightweight Go proxy for distribution/distribution. The lru(least recently used) proxy keeps track of image access and has a schedulable maintenance action. During the maintenance window, the
dockhand-lru-registry will put the registry in readonly mode, and run garbage collection. If target disk usage has exceeded a configurable threshold it will remove a configurable percentage of the least recently used tags from the registry until usage has dropped back below the target threshold.
How to Get Started
You can find installation instructions on the documentation website.
Contributions, issues and comments are welcome at the GitHub project page!