一、docker 常用操作及原理
1、docker 常用操作
2、docker 机制
1、docker client端是通过http或者https与server端通信的。个
2、docker 镜像可以认为是docker 集装箱
二、docker 镜像原理
1、docker 镜像含有启动容器所需要的文件系统及其内容,因此其用于创建并启动docker 容器。
2、docker 镜像采用分层构建机制,最底层为bootfs,上层为rootfs。
a、bootfs,用于系统引导的文件系统,包括bootloader和kernel,容器启动完成后会被卸载以节约内存资源。
b、rootfs,位于bootfs之上,表现为docker容器的根文件系统。
1)、传统模式中,系统启动之时,内核挂载rootfs时会首先将其挂载为只读模式,完整性自检完成后将其重新挂载为读写模式。
2)、docker中,rootfs由内核挂载为只读模式,而后通过联合挂载技术额外挂载一个可写层。
3、原理图如图
4、docker 镜像层
a、位于下层的镜像称为父镜像,最底层的称为基础镜像。
b、最上层为可读写层,其下的均为只读层。
c、如图
三、docker 联合挂载的专用文件系统
1、ubuntu 使用的联合挂载文件系统为aufs,centos使用的联合挂载文件系统为devicemapper,现在用的文件系统为overlayfs2。
2、aufs一开始是UnionFS,后来因为UnionFS代码太烂了才重构了aufs,不过aufs代码也很烂