I suggest creating a custom docker bridge network on which you put all your other docker containers that you want to give access to the local network. There are other reasons a custom bridge is preferred, but that's a different subject.
Here is the terminal command that will create a custom docker bridge network named reverse_proxy
:
docker network create --opt "encrypted" --scope "local" --driver "bridge" --subnet "172.27.2.0/24" --gateway "172.27.2.254" --attachable "reverse_proxy"
Here's the NXPM docker-compose.yml
I'm using that works for this purpose:
version: '3'
networks:
reverse_proxy:
external: true
services:
app:
image: 'jlesage/nginx-proxy-manager'
container_name: 'nxpm'
restart: unless-stopped
networks:
- reverse_proxy
ports:
- '443:443' # https
- '80:80' # http
- '81:81' # npxm webui
volumes:
- /opt/docker/appdata/nxpm/data:/data
- /opt/docker/appdata/nxpm/certs:/etc/letsencrypt
Note the two networks:
sections, one outside of and one inside the nxpm service stanza.
Once this container is up and running, you should be able to route to any network service on the local area network connected to your docker host by creating a host redirect in the nxpm webui that points to that services lan.ip:port
.