varaverk: fix Docker memory — use /sys/fs/cgroup/docker/memory.current (Unraid cgv2 path)

This commit is contained in:
Gmer4Lfe
2026-05-24 11:39:41 -04:00
parent c17be8d017
commit 9e236e3f52
@@ -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; } 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; $dockerKb = 0;
$cgv1 = '/sys/fs/cgroup/memory/docker/memory.usage_in_bytes'; $cgCandidates = [
if (file_exists($cgv1)) { '/sys/fs/cgroup/docker/memory.current',
$dockerKb = (int)((float)@file_get_contents($cgv1) / 1024); '/sys/fs/cgroup/memory/docker/memory.usage_in_bytes',
} else { ];
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) { foreach (glob('/sys/fs/cgroup/system.slice/docker-*.scope/memory.current') ?: [] as $f) {
$v = @file_get_contents($f); $v = @file_get_contents($f);
if ($v !== false) $dockerKb += (int)((float)$v / 1024); if ($v !== false) $dockerKb += (int)((float)$v / 1024);