千家信息网

用一个实际例子理解Docker volume工作原理

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,要了解Docker Volume,首先我们需要理解Docker文件系统的工作原理。Docker镜像是由多个文件系统的只读层叠加而成。当一个容器通过命令docker run启动时,Docker会加载只读
千家信息网最后更新 2026年11月02日用一个实际例子理解Docker volume工作原理

要了解Docker Volume,首先我们需要理解Docker文件系统的工作原理。Docker镜像是由多个文件系统的只读层叠加而成。当一个容器通过命令docker run启动时,Docker会加载只读镜像层并在镜像栈顶部添加一个读写层。如果运行中的容器修改了现有的一个已经存在的文件,那该文件将会从读写层下面的只读层复制到读写层,但是该文件的只读版本依然存在,只不过已经被读写层中该文件的副本所隐藏。

当删除Docker容器,并通过该镜像重新启动时,之前在读写层的更改将会丢失。在Docker中,只读层及在顶部的读写层的组合被称为Union File System(联合文件系统),简称UnionFS,它用到了一个重要的资源管理技术,叫写时复制。写时复制(copy-on-write),也叫隐式共享,是一种对可修改资源实现高效复制的资源管理技术。对于一个重复资源,若不修改,则无需立刻创建一个新的资源,该资源可以被共享使用。当发生修改的时候,才会创建新资源。这会大大减少对于未修改资源复制的消耗。其实COW这个概念对编程人员来说一点也不陌生,广泛用在各种领域,比如ABAP里对于内表(Internal table)的拷贝动作,Java字符串的拷贝实现等等。Docker基于UnionFS去创建containers。

我们下面看一个实际例子。

使用命令行docker run --help查看这个命令的帮助文档。 -h 的作用是指定容器的主机名。


使用命令行创建一个新的容器:

docker run -it --name jerry-container-test -h CONTAINER -v /data busybox /bin/sh
名称为jerry-container-test, 用-v创建了一个volume /data


创建完毕之后,在容器里执行cd /data进入这个目录,这个时候还是空的。


docker ps查看容器状态:


现在我想知道主机上为了实现这个volume,使用了哪个internal目录。

用命令docker inspect jerry-container-test查看关键字"volumes":


得到了容器里/data在主机上实现的目录:

/var/lib/docker/volumes/96aa969033ee7e6d7ff607a0a47de5a5866613a422518ed3f86fee6240bae8cc/_data

现在我在主机上使用touch命令在这个目录下直接创建一个文件:

sudo touch /var/lib/docker/volumes/96aa969033ee7e6d7ff607a0a47de5a5866613a422518ed3f86fee6240bae8cc/_data/test.s


现在切换到容器里,用ls也能看到直接在主机上用touch命令在internal folder里创建的文件了。


要获取更多Jerry的原创文章,请关注公众号"汪子熙":


容器 文件 资源 命令 主机 目录 镜像 系统 技术 拷贝 时候 资源管理 顶部 管理 例子 原理 实际 重要 陌生 人员 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 北京路客互联网科技有限公司 新华互联网科技学校 互联网最新的科技有限公司 上海互联网科技有限公司 艾特科技互联网 小马过河互联网科技 百单互联网科技有限公司 互联网 视角下的科技创新 互联网科技的未来发展 科技伦理 互联网公司 互联网科技公司的市场部门 央行互联网金融科技公司 群盈汇互联网科技有限公司 山东星卡互联网科技有限公司官网 互联网企业科技类企业如何做账 互联网科技实习生岗位 半导体行业属于互联网高科技类吗 广西泛欧互联网科技有限公司 平安好医生打造互联网科技医疗 互联网科技创业有什么好项目 互联网金融科技 互联网的科技创新 合肥互联网科技公司 万易互联网科技 互联网科技有限公司 翻译 福建科技产业互联网发展 彤创互联网科技有限公司 宜昌元轩互联网科技有限公司 青岛易易互联网科技 互联网大会出现的黑科技
0