Docker 使用nsenter工具进入容器的操作

(编辑:jimmy 日期: 2024/12/23 浏览:2)

在使用Docker容器的时候,利用nsenter工具会比较方便,如果我们的系统没有的话,那就需要我们自己来安装了

1.首先访问该网址找到最新版本的nsenter工具

Docker 使用nsenter工具进入容器的操作

2.然后下载nsenter工具的源码到我们的主机上

Docker 使用nsenter工具进入容器的操作

输入命令:

# wget https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.32/util-linux-2.32.tar.gz

Docker 使用nsenter工具进入容器的操作

3.解压.tar.gz包

# tar -xzvf util-linux-2.32.tar.gz

Docker 使用nsenter工具进入容器的操作

4.进入util-linux-2.32的目录

# cd util-linux-2.32/

Docker 使用nsenter工具进入容器的操作

5.输入./configure --without-ncurses命令

6.输入命令make nsenter,编译nsenter

Docker 使用nsenter工具进入容器的操作

7.复制nsenter到/usr/local/bin路径下

# cp nsenter /usr/local/bin

Docker 使用nsenter工具进入容器的操作

8.查看nsenter的使用

# nsenter --help

Docker 使用nsenter工具进入容器的操作

9.为了连接到容器,我们还需要找到容器的第一个进程的PID,可以通过下面的命令获取

格式:

PID=$(docker inspect --format "{{ .State.Pid}}" <container id>)

通过得到的这个PID,就可以连接到这个容器:

格式:

nsenter --target $PID --mount --uts --ipc --net --pid

10.获取容器第一个进程的PID

输入命令# docker ps查看正在运行的容器

Docker 使用nsenter工具进入容器的操作

输入命令查看容器

c74e0f07a914的进程的PID# docker inspect -f {{.State.Pid}} c74e0f07a914

Docker 使用nsenter工具进入容器的操作

10.拿到该进程的PID后进入该容器

输入命令

# nsenter --target 21140 --mount --uts --ipc --net --pid

Docker 使用nsenter工具进入容器的操作

成功进入该容器,21140就是容器c74e0f07a914的进程PID

以上这篇Docker 使用nsenter工具进入容器的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。