将可执行文件绑定到docker容器中
docker run -it --net none -v /bin/dir:/bin/vdir busybox /bin/sh
然后尝试执行绑定的可执行文件
# ls -al /bin/vdir
-rwxr-xr-x 1 root root 126584 Mar 2 2017 /bin/vdir
/ # /bin/vdir
/bin/sh: /bin/vdir: not found
为什么sh
找不到可执行文件?
我们唯一的想法是这与内核相关并且与mount命名空间有关吗?
uname -a
Linux eros 4.4.0-112-generic #135-Ubuntu SMP Fri Jan 19 11:48:36 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
在当前的Centos上,这可以正常工作。任何想法最受赞赏。
感谢
答案 0 :(得分:0)
这结果与容器基础图像有关。基于Ubuntu运行容器不会出现此行为。