如何使用nsenter实用程序从容器连接主机



在ubuntu中有一个名为nsenter的实用程序。nsenter是一个允许进入名称空间的小型工具。它将进入您的码头集装箱。我想从docker容器控制主机。如何使用nsenter实用程序从容器连接主机?

nsenter允许您加入目标进程id(PID(的Linux命名空间。

首先,运行一个与--pid=host共享主机PID命名空间的容器。容器必须具有--privileged的特权,否则执行nsenter将失败,并返回"0";不允许操作";错误容器通过执行tail -f /dev/null而无限期地保持运行。

docker run --pid=host --privileged --name admin-container ubuntu:latest tail -f /dev/null

然后用nsenter执行到容器中,输入主机的第一个init进程(PID=1(的文件系统、ipc、utc和网络名称空间:

docker exec -it admin-container nsenter --target 1 --mount --uts --ipc --net /bin/bash

环顾四周,你会注意到,你在主机上。

相关内容

  • 没有找到相关文章

最新更新