I personally went for PiHole + DNS-over-TLS / DNS-over-HTTPS in order to use PiHole on my phone while outside my home. It doesn't require to constantly have a VPN active, which saves a bit of battery life. Its only drawbacks are that it requires a domain name for DNS-over-HTTPS, a way to route traffic to your server and additional setup and software (Dnsproxy and Certbot)
Yeah, I have a Docker Compose example. I left out the SSL certificate generation out of it because users can piggy-back on Nginx Proxy Manager ou Caddy to handle it for them.
PiHole is awesome, used it for a long time, do yourself a favor and grab a mini pc or spin up a vm on a server and put pfsense on it. You can filter everything out at the entry point to your home network with a high level of granular control.