0

从同一个镜像运行两个容器时,容器 A 和 B

假设在容器 A 中,我们安装了包 AA,在容器 B 中,我们安装了包 BB,没有使用任何驱动器。

问题是,容器是完全无状态的吗?只要我们还在使用那些容器,安装的包存储在哪里?我可以从容器 B 访问包 AA,反之亦然?

4

1 回答 1

3

容器不是无状态的,它们是有状态的。每个容器在基础镜像之上都有自己的完全拥有和唯一的覆盖文件系统。这些每个容器的更改(状态)彼此隔离,因此您无法从容器 B 访问包 AA。当您docker rm container-a只是删除容器 A 的唯一覆盖时,基本映像保持不变。这是不同命令的部分原因,docker start意味着创建一个新容器,因此创建一个新的每个容器状态(最初只是基本映像),而意味着“使用上次保存的状态执行容器停了”。docker runrunstart

于 2016-03-20T04:43:17.327 回答