Exposing Homelab using Cloudflare Tunnel

How I expose self-hosted services publicly with Cloudflare Tunnel instead of port forwarding: setup, configuration, DNS, running it as a service, and the mistakes I've made along the way.