docker: Lookup from /proc/self/cgroup too
authorVille Skyttä <ville.skytta@iki.fi>
Sun, 1 Dec 2019 06:21:32 +0000 (08:21 +0200)
committerRichard W.M. Jones <rjones@redhat.com>
Thu, 16 Jan 2020 08:38:02 +0000 (08:38 +0000)
Refs https://github.com/moby/moby/issues/18355

tests/docker/Makefile.am
tests/docker/proc/self/cgroup [new file with mode: 0644]
virt-what.in

index e2a95d8..401f372 100644 (file)
@@ -24,6 +24,7 @@ EXTRA_DIST = \
        .dockerenv \
        .dockerinit \
        proc/cpuinfo \
+       proc/self/cgroup \
        proc/self/status \
        sbin/dmidecode \
        sbin/uname \
diff --git a/tests/docker/proc/self/cgroup b/tests/docker/proc/self/cgroup
new file mode 100644 (file)
index 0000000..5547637
--- /dev/null
@@ -0,0 +1,13 @@
+12:devices:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+11:blkio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+10:perf_event:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+9:pids:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+8:cpuset:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+7:rdma:/
+6:hugetlb:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+5:net_cls,net_prio:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+4:memory:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+3:freezer:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+2:cpu,cpuacct:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+1:name=systemd:/docker/2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae
+0::/system.slice/containerd.service
index db16b5f..d43916b 100644 (file)
@@ -345,7 +345,8 @@ if ! "$skip_lkvm"; then
 fi
 
 # Check for Docker.
-if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ]; then
+if [ -f "${root}/.dockerenv" ] || [ -f "${root}/.dockerinit" ] || \
+   grep -qF /docker/ "${root}/proc/self/cgroup" 2>/dev/null; then
     echo docker
 fi