通过 nsenter 管理 docker 容器


# yum install util-linux          //安装 nsenter 命令

# docker p_w_picpaths

REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE

centos              latest              2b8d6139a545        35 hours ago        226 MB

centos              centos6             f6808a3e4d9e        4 weeks ago         215.7 MB


# docker run -it centos:centos6 /bin/bash

# docker ps -a

CONTAINER ID   IMAGE              COMMAND     CREATED    STATUS    PORTS        NAMES

75f305e7605b   centos:centos6    "/bin/bash" 27 seconds ago Up 1 seconds    romantic_eli



# docker inspect -f '``.`State`.`Pid`' 75f305e7605b   //通过 inspect 取出 container PID

26769

# nsenter -t 26769 -m -i -r -u           //现在通过 nsenter 进入docker 容器系统中

# hostname                               //已经进入container 内部

75f305e7605b

# w                                      //通过进程访问 container 所以 w 命令看不到登陆用户

 03:17:22 up 21:06,  0 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT