Ash*_*mar 4 ubuntu docker nsenter kubernetes ubuntu-18.04
ubuntu 中有一个名为nsenter的实用程序。nsenter 是一个允许进入命名空间的小工具。它将进入您的 docker 容器。我想从docker容器控制主机。如何使用 nsenter 实用程序从容器连接主机?
nsenter允许您加入目标进程 ID (PID) 的 Linux 命名空间。
首先,运行一个与--pid=host. 容器必须具有 特权--privileged,否则执行nsenter将失败并出现“不允许操作”错误。通过执行 ,容器可以无限期地保持运行tail -f /dev/null。
docker run --pid=host --privileged --name admin-container ubuntu:latest tail -f /dev/null
Run Code Online (Sandbox Code Playgroud)
然后使用 exec 进入容器nsenter,进入主机第一个 init 进程(PID = 1)的文件系统、ipc、utc 和网络命名空间:
docker exec -it admin-container nsenter --target 1 --mount --uts --ipc --net /bin/bash
Run Code Online (Sandbox Code Playgroud)
环顾四周,您会发现,您位于主机上。
| 归档时间: |
|
| 查看次数: |
4245 次 |
| 最近记录: |