Docker在挂载卷时的行为

pkndnst

我目前正在尝试了解Docker如何处理卷的装入并遇到以下行为,这对我来说似乎是很讨厌:

假设我们想将/ var / run目录挂载到一个容器中(仅作为示例),我们执行以下操作:

$ docker run -i -t -v /var/run:/test ubuntu:latest /bin/bash

到目前为止,一切正常,并且/ var / run下的所有文件夹和文件都显示在/ test的容器内。

现在看看如果我们决定挂载/ var目录会发生什么:

$ docker run -i -t -v /var:/test ubuntu:latest /bin/bash

尽管如此,/ var中的所有主机文件夹仍显示在/ test中。但是,在cd进入/ test / run之后,将不显示主机中的文件和目录。换句话说,Docker似乎没有对后续子目录及其内容进行“递归”安装。这是普通的Docker行为吗?

幼虫

这不仅仅是普通的Docker行为;那是普通的linux行为。当您将文件系统绑定安装到另一个目录时,如下所示:

mkdir /tmp/mount
mount -o bind /var /tmp/mount

您将仅看到目标文件中存在于源文件系统中的文件除非要显式绑定这些目录,否则您将看不到任何子目录中包含的文件:

mount -o bind /var/run /tmp/mount/run

这正是您在Docker上看到的行为,因为这与Docker用于在容器内公开主机目录的机制完全相同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

卷挂载时 Docker 权限被拒绝

来自分类Dev

Docker挂载卷

来自分类Dev

Docker非挂载卷

来自分类Dev

在OSX中挂载Docker卷时权限被拒绝

来自分类Dev

孤立的Docker挂载主机卷?

来自分类Dev

Docker组成不挂载卷

来自分类Dev

Docker 挂载和空卷

来自分类Dev

当我尝试挂载卷时,为什么Docker无法打开nginx.conf?

来自分类Dev

Docker中的Logstash-通过卷挂载时找不到配置文件

来自分类Dev

如何解决在docker run命令中挂载卷时拒绝的权限?

来自分类Dev

Boot2docker:尝试挂载外部卷时出现“协议错误”

来自分类Dev

docker-compose 问题:尝试创建/挂载卷时权限被拒绝

来自分类常见问题

Docker,将卷挂载为只读

来自分类Dev

在OSX上将卷挂载到Docker映像

来自分类Dev

Docker-compose命名挂载卷

来自分类Dev

将Github链接挂载为Docker卷

来自分类Dev

Docker卷挂载不存在

来自分类Dev

Docker卷挂载0个大小的文件

来自分类Dev

Docker:如何更改卷的挂载点?

来自分类Dev

将Github链接挂载为Docker卷

来自分类Dev

挂载的Docker卷中的权限被拒绝

来自分类Dev

使用CLI命令进行Docker卷挂载

来自分类Dev

基于变量的 ansible docker 挂载卷

来自分类Dev

docker 中的共享镜像卷挂载错误

来自分类Dev

Docker 挂载卷无法正常工作

来自分类Dev

在启动时自动挂载卷组?

来自分类Dev

在启动时自动挂载卷组?

来自分类Dev

Docker——挂载一个不像常规挂载的卷

来自分类Dev

Docker卷在容器行为中造成故障