TBH I chose Funkwhale for my solution because it looked easy and out of the box, I just add a single Docker and subdomain to my existing site.
It wound up being more or less what you describe.
I may well follow OP's guide and nuke my Funkwhale despite the work I put into it and the fact that it does basically work for its intended purpose
For anyone that hasn't played with this yet
https://extensions.gnome.org/extension/4679/burn-my-windows/