> So… practically: how to achieve this in 2022?
I'll paraphrase myself from a few days ago[0]:
The reality is that we've let you down. Self-hosting shouldn't be any more complicated or less secure than installing an app on your phone. You shouldn't need to understand DNS, TLS, NAT, HTTP, TCP, UDP, etc, etc. Domain names shouldn't be any more difficult to buy or use than phone numbers. Apps should be sandboxed in KVM/WHPX/HVP-accelerated virtual machines that run on Windows, Mac, and Linux and are secure-by-default. Tunneling out to the public internet should be a quick OAuth flow that lets you connect a given app to a specific subdomain, with TLS certs automatically obtained from Let's Encrypt and stored locally for end-to-end encryption.
The technology exists to do all of these things, but no one has taken the time to glue it all together in a truly good UX (we're working on it). Pretty much every solution in this space is targeted at the developer market, not self-hosters.
Almost no individual user has an internet connection that allows self-hosting.