

- Install Caddy on the host
- Configure each service to forward to unique ports (say, 5001 for one service, 5002 for a different service)
- Inside Caddyfile add a block like this for each service:
service1.example.com {
reverse_proxy localhost:5001
}
It can be done in Apache as well, but Caddy is simply better and simpler.
As for images, take a look at Immich if that’s something you might want.

















That really depends on the implementation. In the case of gluetun, yes, no data can leak.
In Linux, by interface binding, no data can leak as well. No idea how Windows network stack is implemented.