Sure, so I use Caddy as a reverse proxy for all my subdomains, the public ones direct straight to whatever service(s) are on IP:port etc, then the private ones only allow private IP ranges of which one is my VPN subnet, therefore only allowing LAN and VPN access. I then also have a section for each of the private subdomains with Authelia authentication which is omitted here in the caddyfile example:
(allowed) {
@allowed client_ip 192.168.1.0/24 192.168.10.0/24 192.168.20.0/28
}
sub.domain.com {
import allowed
handle @allowed {
reverse_proxy 192.168.80.8:8080
}
handle {
abort
}
}
I would recommend Unraid. Not sure what people think of it round here as surprised no one has mentioned it. My homelab was a mix of machines for VMs, Docker and NAS, and I consolidated it last year with Unraid and couldn't be happier. I run Plex, Immich, Wordpress, Home Assistant and a load of other containers, alongside a Windows and Ubuntu VM on a cheap eBay HP Z workstation. If on a NUC with only a single drive, V7 of Unraid will now work without an array, so a single drive basically. It'll give you a GUI for Docker and everything.