Not going to go into enough detail here to write a whole guide, but after initially following the Docker + Tailscale guide to run SilverBullet on a Raspberry Pi I had laying around, I found myself revisiting my install because I wanted to also host rss-bridge and Miniflux.
There is a newish piece of software called tsdproxy which makes it pretty straightfoward to access as many docker containers as you can run all under subdomains for your tailnet.
Previously it wasn’t intuitive to get multiple web-uis up and functioning using tailscale serve, now I have miniflux.tailscale-silly-name.ts.net, silverbullet.tailscale-silly-name.ts.net, etc., by simply adding a tsdproxy.enable = “true” label to each of the running containers.
I believe this can be done with caddy, but this was the most direct way I could find without completely rethinking how I was self-hosting.