I’m hosting this on my homelab in Bellingham. I didn’t have to program anything. Well - I did get a little fancy with the authentication - but for all the rest of it: the chat, the forum, accounts, etc, I just followed these instructions: discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub
Well - I did get a little fancy with hosting it on a different port and letting the nginx proxy to the SSL certs.
But that’s so insane!