[virt-tools-list] [PATCH 2/2] docker: Lookup from /proc/self/cgroup too

Ville Skyttä ville.skytta at iki.fi
Fri Jan 4 12:45:09 UTC 2019


Refs https://github.com/moby/moby/issues/18355
---
 Makefile.am                   |  1 +
 tests/docker/proc/self/cgroup | 13 +++++++++++++
 virt-what.in                  |  3 ++-
 3 files changed, 16 insertions(+), 1 deletion(-)
 create mode 100644 tests/docker/proc/self/cgroup

diff --git a/Makefile.am b/Makefile.am
index 6408cfd..96129b9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -104,6 +104,7 @@ EXTRA_DIST = \
 	tests/docker/.dockerenv \
 	tests/docker/.dockerinit \
 	tests/docker/proc/cpuinfo \
+	tests/docker/proc/self/cgroup \
 	tests/docker/proc/self/status \
 	tests/docker/sbin/dmidecode \
 	tests/docker/sbin/uname \
diff --git a/tests/docker/proc/self/cgroup b/tests/docker/proc/self/cgroup
new file mode 100644
index 0000000..5547637
--- /dev/null
+++ b/tests/docker/proc/self/cgroup
@@ -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
diff --git a/virt-what.in b/virt-what.in
index f871cc1..4168e59 100644
--- a/virt-what.in
+++ b/virt-what.in
@@ -336,7 +336,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
 
-- 
2.17.1




More information about the virt-tools-list mailing list