docker compose and nginx is indeed the best way to do it. Your containers should auto restart on reboot. I've had containers running for years like that.
Kubernetes is more for large clusters.
For a lot of stuff you don't even need nginx and cert bot. You can just run a wireguard vpn server. Connect over wireguard and access your services over local host.
I do that with my jelly fin server and for accessing files while away.
You can even write scripts to send you ip change notifications to your nostr account in private messages. In the off chance your isp decides to change your ip4 address.