我正在运行这个
docker run --rm --name mydocker --privileged \
-v /sys:/sys:ro \
-v /dev:/dev \
--stop-signal=SIGRTMIN+3 \
-p 8080:8080 \
-p 5005:5005 \
-p 8443:8443 \
--net=host \
--cap-drop=SYS_BOOT \
/usr/sbin/init
它应该作为 init 运行 systemd 并从中删除 SYS_BOOT 功能。这是彻底关闭容器所必需的。当如上运行时,它确实以 pid 1 运行 systemd init,但该功能不会被删除:
[root@FK8CDFA9A82A9E7-A /]# cat /proc/1/status | grep Cap
CapInh: 0000003fffffffff
CapPrm: 0000003fffffffff
CapEff: 0000003fffffffff
CapBnd: 0000003fffffffff
CapAmb: 0000000000000000
当 SYS_BOOT 功能被删除时,它应该如下所示:
CapInh: 0000003fffbfffff
CapPrm: 0000003fffbfffff
CapEff: 0000003fffbfffff
CapBnd: 0000003fffbfffff
CapAmb: 0000000000000000
任何想法为什么这不起作用?码头工人版本:
客户端:
版本:1.12.3
API 版本:1.24
Go 版本:go1.6.3
Git 提交:34a2ead
内置:
OS/Arch:linux/amd64
服务器:
版本:1.12.3
API 版本:1.24
Go 版本:go1.6.3
Git 提交:34a2ead
内置:
OS/Arch:linux/amd64