Docker底层实现主要基于LINUX技术,包含LINUX上的命名空间(Namespaces)、控制组(Control groups)、Union文件系统(Union file system)。
- 命名空间。权限隔离控制,保证虽然在同一个宿主机上,但是相互是透明的。
- 控制组。资源分配,保证各个容器资源的分配管理。
- 联合文件系统。主要使用到cow技术(Copy on write),提高磁盘利用率。docker镜像,镜像可以通过分层来进行继承。支持将不同目录挂载到同一个虚拟文件系统下,Docker 中使用的 AUFS(AnotherUnionFS)就是一种联合文件系统。
AUFS支持为每一个成员目录(类似 Git 的分支)设定只读(readonly)、读写(readwrite)和写出(whiteout-able)权限, 同时AUFS里有一个类似分层的概念, 对只读权限的分支可以逻辑上进行增量地修改(不影响只读部分的)。
Docker底层技术解析
本文详细介绍了Docker的底层实现技术,包括LINUX命名空间、控制组和联合文件系统等关键技术点。阐述了这些技术如何共同作用实现容器的资源隔离与高效利用。
2624

被折叠的 条评论
为什么被折叠?



