终端共享与独立性:docker attach是直接附加到容器的现有终端,而docker exec是在容器内启动一个新的进程,不会干扰现有终端。 进程持续性:使用docker attach时,如果你在容器内启动了一个进程(如交互式shell),断开连接后该进程会终止。而使用docker exec启动的进程,在你断开连接后仍然会继续运行。 使用场景:docker attac...
exec和attach命令的简单区别:区别:是否开启一个新的线程 docker exec 进入容器后开启一个新的终端,...
- Docker attach和Docker exec主要的区别在于它们启动的进程和它们的行为方式。Docker attach在容器的当前进程上直接启动一个终端,并将该终端连接到容器的标准输入、标准输出和标准错误。这意味着我们只能在容器当前运行的进程中操作,而且如果我们退出该终端,容器也会被终止。 - Docker exec在容器内启动一个新的进程,该...
docker attach:退出会话时,容器会停止。 docker exec:退出会话时,容器继续运行。 进程管理 docker attach:直接与容器的主进程交互。 docker exec:在容器内部启动新的进程。 使用场景 docker attach:适用于需要临时进入容器进行操作,且不介意容器停止的场景。 docker exec:适用于需要进入容器进行操作,但希望容器继续运行...
Docker exec和attach的区别 exec和attach 都是进入当前运行容器的命令 exec(为较为常用的):使用exec进入容器后,是开启一个新的终端,在里面操作 attach:使用attach是直接在当前容器正在执行的终端里进行操作 例子:我们分别使用2种不同命令进入容器,然后退出容器,再观察容器的状态...
docker exec 和docker attach 都可以进到container的shell, 但是有区别。 docker exec在容器内会起一个新的进程,docker attach 只会把标准输出输入连接到容器内的PID1 . Attach就像投屏,如果你从两个终端attach到一个container,当你在一个终端输入的时候,内容会出现在另一个终端,两个终端是连接在同一个tty上的。
|1. 执行命令 | docker attach CONTAINER_ID | docker exec CONTAINER_ID COMMAND | |2. 是否能启动新进程 | 不能启动新进程 | 可以启动新进程 | |3. 是否可以与已经运行的进程交互 | 可以与已经运行的进程交互 | 不能与已经运行的进程交互 |
在Docker环境中,exec和attach命令的主要区别在于它们如何与容器交互。当使用docker attach时,用户只能与一个shell实例互动。若要启动容器中的新终端窗口,需要使用docker exec。这意味着attach提供了直接访问容器终端的便捷方式,而exec则用于在运行的容器上启动新的进程。如果Docker容器在启动时使用/bin/bash...
docker exec:Run a command in a running container,翻译过来就是在一个正在运行的容器中执行命令,...