Feature request: Local docker registry/hub or mirror

I’m currently using a manually created/updated docker image for most of my build jobs and it lives on docker hub. That’s fine but I do occasionally see docker hub rate-limiting my docker pull requests for the image, especially when I have lots of branches building (consider that I have 15+ jobs in my matrix, each one does a pull).

This image changes infrequently - I wish there could be some way to just upload or cache it with a travis local registry so that I’m not hitting docker hub 15+ times for the same image in a given build.

I’m aware of the various schemes using docker save/load to write the image to the standard travis cache, but that would take up a ton of space, and I think it would be duplicated for each job in the matrix. Is there any other way to do smart caching of an infrequently changing docker image that is used to do the build?