Docker进入容器命令(3种主流进入容器方式)

Docker进入容器命令(3种主流进入容器方式)-mikechen

Docker容器创建了之后,就会涉及进入Docker容器,下面重点详解3种进入Docker容器命令。

一.使用docker attach进入Docker容器

语法格式:

docker attach [OPTIONS] CONTAINER

要attach上去的容器必须正在运行,可以同时连接上同一个container来共享屏幕。

示例:

docker attach  mynginx

 

二.使用exec进入Docker容器

docker在1.3.X版本之后还提供了一个新的命令exec用于进入容器,这种方式相对更简单一些。

语法格式:

docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

OPTIONS说明:

  • -d :分离模式: 在后台运行;
  • -i :即使没有附加也保持STDIN 打开;
  • -t :分配一个伪终端;

示例:

docker exec -it mynginx /bin/sh /root/runoob.sh

除了使用容器名字:mynginx外,也可以使用容器ID。

 

docker attach和exec的区别

docker attach:进入容器正在执行某个命令的终端,不能在里面操作;

docker exec:进入当前容器后开启一个新的终端,可以在里面操作;

 

三.使用nsenter进入Docker容器

还有一种使用nsenter进入Docker容器,没有安装的话,按下面步骤安装即可:

$ wget https://www.kernel.org/pub/linux/utils/util-linux/v2.24/util-linux-2.24.tar.gz
$ tar -xzvf util-linux-2.24.tar.gz
$ cd util-linux-2.24/
$ ./configure --without-ncurses
$ make nsenter
$ sudo cp nsenter /usr/local/bin

如果对nsenter不熟悉,可以使用:

docker inspect --help

然后输入进入命令,就可以进入容器了

docker-enter redis

 

陈睿mikechen

10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。

关注「mikechen」公众号,获取更多技术干货!

后台回复面试即可获取《史上最全阿里Java面试题总结》,后台回复架构,即可获取《阿里架构师进阶专题全部合集

评论交流
    说说你的看法