2

I am currently setting up an UnraidOS server and have a bunch of docker images on my machine. I recently installed a docker container that pings the others based on IP and reports the uptime status. The uptime docker is connect to the bridge network, and can access ONLY the other docker containers on the bridge, not anything else on the network. What would I need to do in order to allow my uptime docker to reach other IPs?

My unraidOS server has an static IP of 192.168.1.14

Docker 1: 192.168.1.14:8401 (bridge)
Docker 2: 192.168.1.14:8402 (bridge)
Docker 3: 192.168.1.14:8403 (bridge)
Uptime Docker 4: 192.168.1.14:8400 (bridge)
Docker 5: 192.168.1.15 (custom: br0)
Docker 6: 192.168.1.16 (custom: br0)

My "Uptime Docker 4" is able to ping and connect to Docker 1, Docker 2, and Docker 3 as they are all on the "bridge" network time. Docker 5 and Docker 6 are both on the "custom: br0" network so that they have their own IP addresses and my "Uptime Docker 4" can't connect to it since it is on a different network.

What would my solutions be so that Docker 5 and Docker 6 still keep their IP yet is still accessible by Uptime Docker 4?

I have another PC connect to my network with an IP of 192.168.1.103 and "Uptime Docker 4" is able to ping it. It still can't ping "Docker 5" and "Docker 6" even though those IPs are assigned just like my PC.

Update: Specifically for UnraidOS users, there is an option under Settings > Docker called "Host access to custom networks". If you turn this on you are able to access the host machine connected to br0. I moved all my containers to br0 and assigned custom IPs for my org.

NOTE: If you restart the server the "Host access to custom networks" fails (even if it shows that it is on), you would need to stop Docker, turn off "Host Access to custom networks" start docker, stop docker again, enable "Host access to custom networks" and then start it again for it to correctly activate the changes.

1 Answer 1

1
+50

The default bridge does only connect to other containers on the default bridge, this isolates containers and allows easy setup without compromising other "production" containers, this is by design. UnRaid also only exposes some setup options for containers, you will likely need to use terminal to solve.

Basically, your "bridge" containers are all on a /16 subnet, which is why they can't ping other IP. I suggest you read to familiarise yourself as best you can; https://docs.docker.com/network/network-tutorial-standalone/

Run docker network inspect bridge to check settings.

To change this you have a few options;

  1. You can confirm/edit the default bridge network settings. Details at the bottom of the overview. If you only wish to use ping, you shouldn't need to open any ports. Change gateway/dns according to your local network. https://docs.docker.com/network/bridge/#configure-the-default-bridge-network

  2. You could setup your own Docker network, with far more considerable network options. This is a little more detailed, and you have to be able to edit docker containers to do this, specifically change their "network driver", something which I am not sure UnRaid has options for through the GUI. https://docs.docker.com/network/network-tutorial-standalone/

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .