I think that in many ways creating a shared, stable namespace for images was actually a bigger contribution than any of the technology. The ability to type somtething like 'FROM python:3' at the top of your Dockerfile and have that automagically mean what you expect was definitely revolutionary in terms of productivity. Behind the scenes I don't know it really matters that much whether that references an image hosted in a repository by Docker the company, or a file in AWS S3, or a tarball from the Python Software Foundation. And that namespace is exactly what they're stabbing in the heart.
Namespaces are so important to ecosystems. See the issues with NPM packages, discussions about Cargo organisation names, etc. I was a huge fan of Deno early on because it used "the web" as its package namespace. Every time I see a new tool come out which bakes an assumed default into a "bare name" I die a little.