docker容器不同容器 diff work merge的作用

./var/lib/containers/storage/overlay/e017df6783793d5ff7a33c9e105c8fb06c68595ba8b4db484d8e8fec79db1358/diff/etc/taos/taosadapter.toml
./var/lib/containers/storage/overlay/e017df6783793d5ff7a33c9e105c8fb06c68595ba8b4db484d8e8fec79db1358/diff/usr/local/taos/cfg/taosadapter.toml
./var/lib/docker/overlay2/01e4e30c17880a4b08ba611a8e88d57a252d6e777a4780108e15e82db6e64340/merged/etc/taos/taosadapter.toml
./var/lib/docker/overlay2/01e4e30c17880a4b08ba611a8e88d57a252d6e777a4780108e15e82db6e64340/merged/usr/local/taos/cfg/taosadapter.toml
./var/lib/docker/overlay2/db07d222b427e900778891972018c7dd42f642d7abe47d45cdf4d0028b7aa6e3/diff/etc/taos/taosadapter.toml
./var/lib/docker/overlay2/db07d222b427e900778891972018c7dd42f642d7abe47d45cdf4d0028b7aa6e3/diff/usr/local/taos/cfg/taosadapter.toml
容器生成了 diff    work  merge 三个目录

Docker 使用 overlay2 存储驱动来管理镜像和容器的文件系统。这种存储驱动使用了层叠的文件系统,允许容器文件系统的层与镜像文件系统的层高效地共享。当你提到容器生成了 diffworkmerged 三个目录,这是 overlay2 存储驱动的标准部分,每个目录都有其特定的用途:

1. Diff Directory

  • 位置:例如 /var/lib/docker/overlay2/<layer-id>/diff
  • 作用:这个目录包含了自该层之上的所有更改。每当容器修改了文件系统上的任何文件或目录时,这些更改都会存储在 diff 目录中。它是容器中每一层独有的更改集合,不会影响下面的层。

2. Work Directory

  • 位置:例如 /var/lib/docker/overlay2/<layer-id>/work
  • 作用:这是 overlay 文件系统用来准备下一层叠操作的工作目录。它是必需的,因为它用于处理临时文件,这些文件在文件层叠过程中需要。用户通常不需要也不应该直接操作这个目录。

3. Merged Directory

  • 位置:例如 /var/lib/docker/overlay2/<layer-id>/merged
  • 作用:这个目录是一个虚拟的文件系统,通过将所有层(包括基础镜像层和所有 diff 层)叠加起来形成的。这使得容器可以看到一个统一的文件系统视图。当你进入一个运行中的容器时,你看到的文件系统就是 merged 目录。

文件系统层叠原理

当 Docker 需要启动一个容器时,它会创建一个新的 overlay2 层,其中包含 diffworkmerged 三个目录。diff 目录用于存储在该容器生命周期中产生的所有文件更改。work 目录是技术性的,用于支持 overlay2 文件系统的操作,而 merged 目录则提供了一个统一的视图,使容器内的进程看到一个完整的文件系统。

总结

这种层叠文件系统的设计,特别是在容器技术中,极大地提高了存储效率和性能,因为只有实际更改的文件才需要额外存储空间,而未更改的文件则可以在多个容器之间共享。这也方便了快速启动容器和高效利用磁盘空间。

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值