I recall the early days, the docker registry API was designed in a way that made serving from S3 impossible.
It always boggled my mind, because it must have made hosting docker hub super expensive.
In hindsight, the registry should have had a better API, been more suited for third-party mirrors, etc. then docker might still own the central registry... Now it seems like eventually they won't even own that.