exec:
进入容器后开启一个新的终端,可以在里面操作(常用)
attach
进入容器正在执行的终端,不会启动新的进程
这里举例来说明区别:
首先, 我们执行以下命令来创建和启动一个容器:
docker run --name "CustomUbuntu" ubuntu /bin/bash -c "while true; do sleep 1; echo '!!test!!'; done"
这行命令的作用就是创建一个容器,然后一直循环输出 !!MyUbuntu!!
;
执行之后再终端上会看到如图所示内容:
然后我们分别执行,exec
和 attach
进入容器;
首先执行 docker ps
, 可以看到当前正在运行中的容器列表:
对 680d
执行 exec
,进入到容器内部,可以输入其他的命令:
对 680d
执行 attach
,可以发现进入到创建容器时指定命令所在的窗口中,此时无法输入其他命令
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。