diff --git a/Plugin/usr/local/emhttp/plugins/varaverk/include/monitor.php b/Plugin/usr/local/emhttp/plugins/varaverk/include/monitor.php index 6443dea..5fa4e6d 100644 --- a/Plugin/usr/local/emhttp/plugins/varaverk/include/monitor.php +++ b/Plugin/usr/local/emhttp/plugins/varaverk/include/monitor.php @@ -124,12 +124,19 @@ function vv_memory_breakdown(): array { if (preg_match('/^size\s+\d+\s+(\d+)/', $line, $m)) { $arcKb = (int)($m[1] / 1024); break; } } - // Docker — cgroup v1 then v2 + // Docker — try paths in order: Unraid cgv2, systemd cgv2 scopes, cgv1 $dockerKb = 0; - $cgv1 = '/sys/fs/cgroup/memory/docker/memory.usage_in_bytes'; - if (file_exists($cgv1)) { - $dockerKb = (int)((float)@file_get_contents($cgv1) / 1024); - } else { + $cgCandidates = [ + '/sys/fs/cgroup/docker/memory.current', + '/sys/fs/cgroup/memory/docker/memory.usage_in_bytes', + ]; + foreach ($cgCandidates as $path) { + if (file_exists($path)) { + $dockerKb = (int)((float)@file_get_contents($path) / 1024); + break; + } + } + if ($dockerKb === 0) { foreach (glob('/sys/fs/cgroup/system.slice/docker-*.scope/memory.current') ?: [] as $f) { $v = @file_get_contents($f); if ($v !== false) $dockerKb += (int)((float)$v / 1024);