千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > Docker的核心底层技术有哪些

Docker的核心底层技术有哪些

来源:千锋教育
发布人:xqq
时间: 2023-12-04 06:27:25 1701642445

Docker的核心底层技术有哪些?Docker可以运行在64位Linux发行版以及苹果和微软系统上,但后两者只能使用虚拟机作为宿主机。所有的可运行的容器运行在宿主机系统的内核之上,但是锁定在自己的运行环境中,与主机以及其他容器的运行环境是隔离的。Docker底层的两个核心技术分别是Namespaces和Cgroups(Controlgroups),并且使用了一系列 Linux 内核提供的特性来实现容器的基本功能,包含命名空间、群组控制、联合文件系统以及LXC等特性。

(1)命名空间(Namespaces)。

命名空间的作用是为容器提供进程间隔离的技术,每个容器都有独立的运行空间,比如pid,net,mnt,uts,ipc等命名空间,以及为每个容器提供不同的主机名。命名空间可以保证不同的容器之间不会相互干扰,每个容器都像是一个独立空间且有可使用的系统。利用命名空间提供了一个隔离层,每一个应用服务都是在它们自己的命名空间中运行而且不会访问到命名空间之外的资源。

(2)群组控制(Cgroups)。

Docker使用到了群组控制技术来管理可利用的资源,其主要具有对共享资源的分配、限制、审计及管理等功能,例如可以为每个容器分配固定的CPU、内存以及I/O等资源。群组控制特性使得容器能在物理机上互不干扰地运行,并且平等使用物理资源。

(3)联合文件系统(AUFS)。

联合文件系统是一个分层的轻量级且高性能的文件系统,Docker使用该文件系统叠加分层的构造容器。Docker可以使用很多种类的文件系统,包括AUFS,btrfs,vfs以及DeviceMapper等。正是具有构建Docker镜像基础的AUFS文件系统,将具有不同文件系统结构的镜像层进行叠加挂载,让它们看上去就像是一个文件系统。

(4)LXC(Linux Container)。

LXC目标是提供一个共享宿主机内核的系统级虚拟化方法,在运行时不用重复加载系统内核,并且具有很多的容器共享主机一个内核的优势,因此可以提高容器的启动速度,并且大大减少占用主机的物理资源。

tags: IT培训
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT