我特灵玩绑定挂载,我在一个奇怪的行为encourred,我知道绑定挂载挂载在容器文件系统中的主机文件夹模糊了原始容器的内容。现在,当我试着做一个例子:
docker run -it -v /home/user:/tmp ubuntu bash
在contaner的/tmp文件夹中有用户的主文件夹,但当我试图绑定一个“非主文件夹”,如/var/lib:
docker run -it -v /var/lib:/tmp ubuntu bash
容器中的/tmp文件夹是空的,为什么会这样?此外,如果我在最后一个容器中执行,例如“touch foo”,然后运行另一个具有相同绑定的容器:
docker run -it -v /var/lib:/tmp ubuntu bash
我将在/tmp文件夹中找到foo文件
附加信息:我在VMaware虚拟机中运行Ubuntu 19服务器
2条答案
按热度按时间r1zhe5dt1#
我发现了一个“肮脏”的解决方案,我以前通过snap安装了docker,我通过apt重新安装了docker,现在工作正常,这将仍然是一个minstery
krugob8w2#
我写这个答案作为第二个解决方案。我在默认的Ubuntu服务器上安装了snap和apt版本,重新启动,然后从这里使用docker安装脚本:
我现在可以看到容器中的绑定挂载。不确定根本原因,但这解决了我的问题。当我安装Ubuntu服务器时,我选择它来安装Docker。也许这不是一个全功能绑定挂载的好主意。