I am not an expert but I’ve dabbled on this before some years ago. I’m taking a swing at this not knowing what Caddy is.
If you don’t need it exposed publicly, you just need a local DNS server like bind or dnsmasq set up somewhere on the local network, or edit the hosts files on your individual machines to hard code your local network service IPs for those machines. You don’t need a purchased domain name to advertise domains locally. It’s probably also possible for each machine to advertise its DNS without a central server, but it’s outside of my expertise.
Exposing port services with a domain name is a lot trickier but it’s doable in various ways. A cursory search says SRV records or setting up a proxy on your local network. It’s been a long time since I’ve attempted this. Optimally your host and client will just be configured to use the correct ports already, like port 80 for http and port 443 for https and whatever the default port is for your other services, so that you can use the same hostname per IP.
Since it’s all on your local network I wouldn’t bother with encryption/self signed certs, unless your risk profile includes randos on your network sniffing your services (spying on your network traffic while connected to your network).
I don’t have guides handy but maybe some of those keywords will help. If you’re not staunchly anti-ai, it’s a common enough scenario for something like chatgpt to guide you through.
I am not an expert but I’ve dabbled on this before some years ago. I’m taking a swing at this not knowing what Caddy is.
If you don’t need it exposed publicly, you just need a local DNS server like bind or dnsmasq set up somewhere on the local network, or edit the hosts files on your individual machines to hard code your local network service IPs for those machines. You don’t need a purchased domain name to advertise domains locally. It’s probably also possible for each machine to advertise its DNS without a central server, but it’s outside of my expertise.
Exposing port services with a domain name is a lot trickier but it’s doable in various ways. A cursory search says SRV records or setting up a proxy on your local network. It’s been a long time since I’ve attempted this. Optimally your host and client will just be configured to use the correct ports already, like port 80 for http and port 443 for https and whatever the default port is for your other services, so that you can use the same hostname per IP.
Since it’s all on your local network I wouldn’t bother with encryption/self signed certs, unless your risk profile includes randos on your network sniffing your services (spying on your network traffic while connected to your network).
I don’t have guides handy but maybe some of those keywords will help. If you’re not staunchly anti-ai, it’s a common enough scenario for something like chatgpt to guide you through.