From dfaffe3ec59c36fcdb1f2742ae6839f3561a4f50 Mon Sep 17 00:00:00 2001 From: Pascal Vizeli Date: Thu, 13 Aug 2020 17:50:39 +0200 Subject: [PATCH] Self fix corrupt docker network (#1907) --- supervisor/docker/network.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/supervisor/docker/network.py b/supervisor/docker/network.py index d1eee8a85..fc4e98df9 100644 --- a/supervisor/docker/network.py +++ b/supervisor/docker/network.py @@ -31,7 +31,15 @@ class DockerNetwork: @property def containers(self) -> List[docker.models.containers.Container]: """Return of connected containers from network.""" - return self.network.containers + containers: List[docker.models.containers.Container] = [] + for cid, data in self.network.attrs.get("Containers", {}).items(): + try: + containers.append(self.docker.containers.get(cid)) + except docker.errors.APIError as err: + _LOGGER.warning("Docker network is corrupt! %s - run autofix", err) + self.stale_cleanup(data.get("Name", cid)) + + return containers @property def gateway(self) -> IPv4Address: