I’m in the process of building out a smallish home lab, with most things running in containers, and one of the things I wanted was dns for my internal things that Just Worked. It seems this is still harder than it needs to be. I started looking at Consul + Traefik, but the latest version of Traefik seems to have gotten significantly more complex for simple use cases. I’ve since started looking at Caddy, which seems far more straightforward. I will look at this, however, since it might be simpler still.
A little bit of docs would help. Not sure what a node is here, and what is mDNS doing.<p>Seems like the perfect thing for me (I run a stupid dual-traefik setup that does TLS SNI negotiation for me that I want to get rid of), but I can't figure out what is this.
I have about 70 devices and services at home (pure software services such as a web app, up to WiFi-connected IoT).<p>I manage everything via dnsmasq on my router, and I use a DNS wildcard to make sure that all unknown IPs map to my server.<p>This is because the server holds the docker engine on whihc all "software services" are located. I did a few bounces between Traefik and Caddy over the years and finally settled on Caddy.<p>Caddy is a truly fantastic web server. If you manually forced IPs on your containers there is not problem at all (2 lines per service). If you did not, there is unfortunately no built-in mechanism in Caddy to autodiscover them (such as the one in Traefik). I wrote my own using the new Caddy API (v2).
My router (runs Tomato, but I think DD-WRT is the same) automatically puts host names into its DNS server; I've never had to do anything.<p>Host names with spaces, etc (e.g., DNS non-compliant) don't work, but otherwise it Just Works.<p>Edit: language
I’m actually looking for something that does the mDNS registration for multiple back-end services (I did <a href="https://github.com/piku/avahi-aliases" rel="nofollow">https://github.com/piku/avahi-aliases</a> for announcing mDNS hostnames, which will go along nicely with this, but wanted an all-in-one or a Traefik/Caddy plugin that would do the registration itself).
Cloudflare Argo Tunnel is awesome, though it requires Argo which is $5 a month.<p><a href="https://developers.cloudflare.com/argo-tunnel/" rel="nofollow">https://developers.cloudflare.com/argo-tunnel/</a><p>Run a simple command locally, and have a https server endpoint connected to anything on your machine.
Hope this isn’t too off topic, but does anyone happen to know if there’s any way to VPN with mDNS so that iTunes syncing and/or media sharing work remotely?