This is exactly the setup I’ve been considering. Feels like the best of both worlds: you learn the standard tooling and can easily upgrade to full blown distributed k8s, but you retain the flexibility and low cost aspects of single VM.
Also leaning towards putting it behind a Cloudflare tunnel and having managed Postgres for both k3s and application state.
Counterpoints anyone?