Docker镜像与容器存储结构详解:devicemapper与aufs对比
48 浏览量
更新于2024-07-15
收藏 1.4MB PDF 举报
Docker镜像与容器存储结构分析是一篇深入探讨Docker技术内部工作原理的文章。Docker作为开源应用容器引擎,利用Linux内核namespace进行沙盒隔离,Cgroups负责资源限制,提供了三种主要的镜像存储驱动:aufs、devicemapper和Btrfs。
首先,文章重点分析了AUFS(Another Union File System),它是一种特殊的文件系统,允许将多个目录挂载到单一的虚拟文件系统中,这使得在容器之间共享可执行代码和运行库成为可能。虽然aufs是Docker早期支持的存储驱动,但由于其依赖于Linux内核补丁且不被纳入主线,当需要大量共享代码或库时,aufs是一个经济高效的解决方案。
其次,devicemapper是Linux内核中的一个底层机制,允许开发者创建逻辑设备映射到物理设备,提供了灵活的存储资源管理。在Docker中,devicemapperdriver创建了一个大文件来存储镜像和容器数据,每个容器有自己的10G卷,且可通过命令行参数调整。然而,devicemapper不支持设备间的共享存储。
最后,Btrfs存储驱动在Docker构建时表现出色,尤其是在性能方面,但同样不支持设备间共享。在一些不支持aufs的Linux发行版(如CentOS和openSUSE)上,Docker可能默认使用devicemapper。
作者刁金明通过实验在openSUSE 13.10和Ubuntu 14.10等不同的环境中对比了这些驱动器的特性。文章旨在为读者提供关于Docker存储结构的实用理解,以便在实际项目中选择合适的存储驱动,并引发进一步的技术讨论。
了解Docker的存储机制有助于优化镜像大小、提升性能以及管理资源,特别是在容器化应用的部署和扩展场景中。掌握这些细节对于充分利用Docker的优势至关重要。
2021-06-20 上传
2022-06-19 上传
2024-11-25 上传
2024-11-25 上传
2024-11-25 上传
2024-11-25 上传
2024-11-25 上传
weixin_38677585
- 粉丝: 5
- 资源: 938
最新资源
- 【eoeAndroid特刊】第六期 数据通信-成为Android数.pdf
- MyEclipse 6 Java入门教程
- 【eoeAndroid特刊】第五期 Android widget.pdf
- XFire开发指南(文档Pdf格式)
- 【eoeAndroid特刊】第四期Android widget
- 【eoeAndroid特刊】第三期 Android Market及应用发布
- Spring开发指南
- 【eoeAndroid特刊】第二期 图像处理篇
- 【eoeAndroid特刊】第一期 Andriod 1.5 SDK简介.pdf
- prototype1.4
- Seam2.0高级开发手册
- JSP2_0 技术手册(中文)
- Java network programming, 2nd edition
- Wicket入门开发学习资料(中文)
- 数据结构 停车场系统
- strust1 入门学习资料(中文)