The problem here is simple; it only provides this immense value if it is effectively free without discrimination. But of course, it can't really just be free, or at least Dockerhub certainly can't be.
On the other hand, it also provides immense value to enterprise and even smaller customers, too, clearly. And I don't think anybody ever strongly doubted that aspect, it just was more doubted whether you could make a business out of it. But lo and behold, Dockerhub was integrated enough into the ecosystem and without an a strong enough alternative that it didn't seem to matter.
I assume Docker Desktop also factors into this somehow, but I don't know. I don't use it. Even on Windows and macOS, in the event I must use them to do dev work, I just use Podman Machine. Works well enough for me, and I don't care about a desktop UI (although apparently a couple do exist.)
I am glad that at the end of the day, I haven't seen any super bad fallout from this. I'm still able to use Docker images on my NAS without paying a monthly subscription. Whatever their rate limit is, I'm not hitting it. I'm sure it's a super bad pain in the ass for certain parties though. Like I bet GitHub has a deal to keep Dockerhub unlimited in it's CI, but smaller providers that do CI like srht are probably screwed. That's a shame for the entire ecosystem.
That said, Podman Desktop[1] does most of this stuff and it's free. Maybe it isn't as polished (Docker has definitely put a lot of engineering into the filesystem stuff on macOS for example) but to me it looks similarly nice to Docker Desktop. So if you are working as an individual and don't want to deal with licensing restrictions, there is a reasonable alternative at least.
Yeah tools and common container format is why it got popular but with amount of alternatives that's not monetizable either.
Docker desktop is a smart move honestly, monetize stuff around the containers (managing, making sure its secure) that generally requires a lot of knowledge without it, so the pitch is not just "make the job easier" but "maybe allow company to skip hiring person(s) dedicated to running the whole house of cards"
This is a self inflicted wound. They placed themselves there but never though about the costs of running a free service with PBs of traffic.
> On the other hand, it also provides immense value to enterprise and even smaller customers, too, clearly
And they should had taken money from enterprise from the day 1 for Hub services.
Hindsight is 20/20, of course, but then I learned about Docker "eco-system" (especially things like Watchtower) the traffic costs was one of the first things what I though about.
also they are in a tough spot, because if they limit the download of the most popular images, they limit their own basic usability, and those images happen to be almost all free super-fungible stuff (alpine, ubuntu, node, redis, postgresql, nginx, apache, and all the hundreds and thousands of common stuff FOSS stuff)
tying downloads to clients requires some development, requires setting up rate-limiting, etc.
I think what they ended up doing is not a terrible outcome (require login above a certain number of pulls, plus - I imagine - they require login if an IP address pulls too much anyway), but they can't really charge too much, because setting up a caching proxy is kind of trivial.
For their private 'hubs'? Pretty likely. The usual SaaS stuff. "You can run it at home, with bells and whistles, but you can just pay us...". Add in some corporate mumbo jumbo about auditing, logging, archiving et cetera, et cetera.
> also they are in a tough spot, because if they limit the download of the most popular images
They did it eventually, though from the other end.
> and those images happen to be almost all free super-fungible stuff
Yep, this is what eventually became their success story - providing a service everyone uses without even thinking about it.
> tying downloads to clients requires some development, requires setting up rate-limiting, etc.
Aaand this is exactly what they did.
> because setting up a caching proxy is kind of trivial.
It's the question of convenience. Anyone can spin-up a private registry (pulling from https://hub.docker.com/_/registry/, heh) but it's PITA to configure, maintain, care. Setting up a caching proxy.. Probably can be done, but again, this requires the resources, both hardware and very software.
Small business selling is much more like selling to consumers.