Would it be possible to use ports 443 and 80 for both Adguard Home and Vaultwarden? They’re both on the same machine, Vaultwarden will be in a docker container and Adguard Home not. I’m doing this on an Ubuntu server.
Would it be possible to use ports 443 and 80 for both Adguard Home and Vaultwarden? They’re both on the same machine, Vaultwarden will be in a docker container and Adguard Home not. I’m doing this on an Ubuntu server.
As others have said, a reverse proxy is what you need.
However I will also mention that another tool called macvlan exists, if you’re using containers like podman or docker. Setting up a macvlan network for your containers will trick your server into thinking that the ports exposed by your services belong to a different machine, thus letting them use the same ports at the same time. As far as your LAN is concerned, a container on a macvlan network has its own IP, independent of the host’s IP.
Macvlan is worth setting up if you plan to expose some of your services outside your local network, or if you want to run a service on a port that your host is already using (eg: you want a container to act as DNS on port 53, but systemd-resolved is already using it on the host).
You can set up port forwarding at your router to the containers that you want to publicly expose, and any other containers will be inaccessible. Meanwhile with just a reverse proxy, someone could try to send requests to any domain behind it, even if you don’t want to expose it.
My network is set up such that:
Just as a warning, the macvlan stuff isn’t well documented and seems to have hard limits. I worked with it a couple of years ago and had to eventually read a lot of Docker code to figure some stuff out, and the host was only able to successfully set up 4 macvlan networks at a time - the fifth (and any following ones) were never reachable, even though I used the same scripts as for all other ones.
Things might have improved in the meantime.