欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-09-17 14:46:56
在使用docker容器的时候,利用nsenter工具会比较方便,如果我们的系统没有的话,那就需要我们自己来安装了1.首先访问找到最新版本的nsenter工具2.然后下载nsenter工具的源码到我们的...

在使用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工具进入容器的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。