先创建一个ubuntu container
docker run -dit ubuntu
docker exec
docker exec -t <container-id> bash
docker attach
docker attach <container-id>
docker exec 和docker attach 都可以进到container的shell, 但是有区别。
docker exec在容器内会起一个新的进程,docker attach 只会把标准输出输入连接到容器内的PID1 . Attach就像投屏,如果你从两个终端attach到一个container,当你在一个终端输入的时候,内容会出现在另一个终端,两个终端是连接在同一个tty上的。用attach方式进到container,当从终端退出来的时候,container是会被关闭的。 exec是不会这样的,不同终端连接到不同的tty,退出终端的时候不会关闭container的main process.