From 5fd791c2291fce775e7f77725e1b8a7e76a9c40b Mon Sep 17 00:00:00 2001 From: Waqar Ahmed Date: Thu, 29 Aug 2024 21:53:19 +0500 Subject: [PATCH] Define custom address pool capacity for docker This commit defines custom address pools to optimize Docker network creation capacity. The pools are set to 172.30.0.0/16 and 172.31.0.0/16 with a /27 subnet size, allowing for up to 4096 Docker networks, each with 32 IP addresses. This change significantly increases the number of available Docker networks, which is crucial for adding large number of apps which are meant to run simultaneously because by default behaviour the capacity would roughly be at 32 networks meaning roughly 32 apps. --- .../middlewared/etc_files/docker/daemon.json.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/middlewared/middlewared/etc_files/docker/daemon.json.py b/src/middlewared/middlewared/etc_files/docker/daemon.json.py index 602c8f8254e82..3fb32af1aef2c 100644 --- a/src/middlewared/middlewared/etc_files/docker/daemon.json.py +++ b/src/middlewared/middlewared/etc_files/docker/daemon.json.py @@ -22,6 +22,16 @@ def render(service, middleware): 'exec-opts': ['native.cgroupdriver=cgroupfs'], 'iptables': True, 'storage-driver': 'overlay2', + 'default-address-pools': [ + { + 'base': '172.30.0.0/16', + 'size': 27 + }, + { + 'base': '172.31.0.0/16', + 'size': 27 + }, + ], } isolated = middleware.call_sync('system.advanced.config')['isolated_gpu_pci_ids'] for gpu in filter(lambda x: x not in isolated, get_nvidia_gpus()):