docker attach 和 exec 的区别

一个好习惯是使用 run 启动容器,用 exec 运行容器,用 Ctrl+P+Q 退出容器。

attach 和 exec 都可以进入容器,不过如果是使用 attach 进入容器后关闭容器,则会被认为是销毁了容器,而 exec 则不然。

这里有一点要注意,就是如果 attach 进入一个容器,然后将容器关闭掉了,那么 exec 出来的容器也都没了。
注意:Ctrl + P + Q 是挂起,exit 是关闭。


提问:attach 对容器的修改会持久化吗?exec 呢?如果会,需要满足什么条件?如果不会,为什么?

答:会的,而且多个 exec/attach 进入同一个容器的话,修改是会被同步的。


再提问:
在一个运行中的容器内的declare 一个变量,在另一个容器内可以看到吗?

答:看不到的。


这样理解:
镜像就是一个小系统,在上面打开的所有镜像都是进程。所以,该隔离的隔离,不该隔离的都不隔离。

猜你喜欢

转载自blog.csdn.net/qq_43762191/article/details/124805876