docker 卷内的主机挂载点不一致

docker 卷内的主机挂载点不一致

我有一个简单的设置,其中我将主机的文件夹绑定到容器中。

docker run --rm -it -v /mnt:/mnt ubuntu:16.04 bash

然后我将其他一些文件系统挂载到主机的文件夹中。容器端出现了挂载点,但没有出现相应的挂载文件系统。

sudo mkdir /mnt/a
sudo mount /dev/sda /mnt/a

如果我启动一个在主机文件夹下预先安装了某些东西的容器,它们将是可见的。

我认为我遗漏了一些有关 Linux cgroups 工作原理的知识。有人能解释一下发生了什么吗?

我正在运行docker17.03.0-ce

答案1

较新的 docker 版本引入了更多用于音量控制的 CLI 选项。现在可以指定选项用于挂载。使用shared主机绑定卷上的选项允许从主机的挂载命名空间到容器的挂载传播:

docker run --rm -it -v /mnt:/mnt:shared ubuntu:16.04 bash

在容器内完成的卸载将传播回主机

相关内容