Skip to content

Commit 9e555cd

Browse files
committed
Fix container IP selection
1 parent e84ed0c commit 9e555cd

File tree

2 files changed

+12
-14
lines changed

2 files changed

+12
-14
lines changed

nginx_proxy/WebServer.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,10 @@ def learn_yourself(self):
7979
self.id=self.container.id
8080
networks = [a for a in self.container.attrs["NetworkSettings"]["Networks"].keys()]
8181
for network in networks:
82-
net_detail=self.client.networks.get(a)
83-
self.networks[net_detail.id]=self.networks[net_detail.name]
84-
self.networks[net_detail.name]=self.networks[net_detail.id]
82+
print ("Check known network: ",network)
83+
net_detail=self.client.networks.get(network)
84+
self.networks[net_detail.id]=net_detail.name
85+
self.networks[net_detail.name]=net_detail.id
8586
except (KeyboardInterrupt, SystemExit) as e:
8687
raise e
8788
except Exception as e:
@@ -90,8 +91,10 @@ def learn_yourself(self):
9091
"\n Is it running in docker environment?",
9192
file=sys.stderr)
9293
print("Falling back to default network", file=sys.stderr)
93-
network = self.client.networks.get("frontend")
94-
self.networks[network.id] = "frontend"
94+
default_network="frontend"
95+
network = self.client.networks.get(default_network)
96+
self.networks[network.id] = default_network
97+
self.networks[default_network] = network.id
9598

9699
def _register_container(self, container: DockerContainer):
97100
"""

nginx_proxy/pre_processors/virtual_host_processor.py

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -92,16 +92,11 @@ def host_generator(container: DockerContainer, service_id: str = None, known_net
9292
unknown = True
9393
for name, detail in network_settings["Networks"].items():
9494
c.add_network(detail["NetworkID"])
95-
# fix for https://trello.com/c/js37t4ld
96-
if detail["Aliases"] is not None: # we might use alias
97-
if detail["NetworkID"] in known_networks and unknown:
98-
alias = detail["Aliases"][len(detail["Aliases"]) - 1]
99-
ip_address = detail["IPAddress"]
100-
network = name
101-
if ip_address:
102-
break
103-
elif detail['NetworkID']:
95+
if detail["NetworkID"] and detail["NetworkID"] in known_networks and unknown:
10496
ip_address = detail["IPAddress"]
97+
#if detail["Aliases"] is not None: # we might use alias
98+
# alias = detail["Aliases"][len(detail["Aliases"]) - 1]
99+
# network = name
105100
if ip_address:
106101
break
107102
else:

0 commit comments

Comments
 (0)