If your DNS provider has an easily usable API, you can set up something that checks your current public ipv4/v6 address and changes the DNS record if the IP address changes. You just need to set the DNS TTL to something smaller, such as 1 hour or less, to limit the impact of a changing IP address.
Cloudflare is a nice option.
Now I’m waiting for someone to create a docker fork where docker has access to the host system directly outside of the VM and shared volumes.
Although I'd argue "Docker without containers" is a UX achieve.
They're not VMs, they're containers. And it already supports accessing the host filesystem, see the `--volume` flag.
Now sure, I can rent a VPS to forward traffic to my device via a VPN. But that's not really self-hosted any more.
It seems a decentralised internet is becoming harder and harder with each passing day -- hosting stuff on an rpi at home is no longer possible.
These are my notes on setting that up http://blog.cetinich.net/content/2020/2020-sphynx-ablog-blog...
As I'm writing though, that probably wouldn't help in most university network setups, which the article mentioned. Tunneling is probably the path of least resistance there.