Docker Hub is the de facto standard Docker registry, literally, if you don't specify a registry when pulling an image Docker will invisibly prepend docker.io/ to it. That bit is fair enough really, it's their software and their registry platform so why not prefer it? From the beginning of the Linuxserver project we used Docker Hub as our primary registry; as we grew we started mirroring our images to Gitlab and Quay.io, more as a backup than anything else, there was no reason for us to have concerns about the stability or functionality of Docker Hub, until...
In 2020 Docker announced that they would start purging old images and introducing pull limits for unpaid accounts and unauthenticated users - for some reason they've scrubbed these posts from their blog, hence the Internet Archive links.
This concerned us, and many other users, deeply, not just because of the changes - our CI account is on a paid plan so wouldn't have been directly affected - but because of the direction of travel it indicated and the potential impact to our users. Around the same time, Github launched its own container registry, GHCR, which was an evolution of their existing packages registry. This prompted us to consider changing our primary registry and later that year we started updating our documentation to use ghcr.io as the registry for all our examples. In 2021 we partnered with Scarf to set up lscr.io as a frontend registry for all our images, but retained ghcr.io as the backend provider. In 2023, Docker Hub announced that they were sunsetting Free Team Organisations, meaning your options were going to be free individual user accounts, or paid team accounts. While we would have been protected from the changes, Docker ultimately decided not to go forward with them, after user backlash.