Yep, it’s doable. I used to run it on a VPS, too, until I got myself flagged on http://www.openresolverproject.org/ so I took it down. Nowadays I just run pfBlockerNG with the Pi-Hole lists set in DNSBL for the local network.
My setup was Docker-based, but the Caddy configuration was quite simple.
skyhole.whitestrake.net {
proxy / pihole {
transparent
}
}
The admin portal was available at https://skyhole.whitestrake.net/admin
.
I also had a catch-all for :80
proxying to the Pi-Hole that was used for replacing ads with blank spaces.