Docker底层原理
docker镜像底层原理 1.docker镜像是分层的文件系统 每个分层的镜像都有单独的功能,然后汇聚成一起对外暴露成一个整体的镜像。 这种分层的镜像我们又称为联合文件系统(UnionFS)。
Union 文件系统是 Docker 镜像的基础。
镜像可以通过分层来进行继承,基于基础镜像,可以制作各种具体的应用镜像。
2.docker镜像的加载原理
1.bootfs(boot file system)主要包含bootloader和kernel,
bootloader主要是引导加载kernel, Linux刚启动时会加载bootfs文件系统,在Docker镜像的最底层是引导文件系统bootfs。
2.rootfs (root file system) ,在bootfs之上。
包含的就是典型 Linux 系统中的 /dev,/proc, /bin, /etc 等标准目录和文件。
3.为什么Docker镜像要设计成这种分层的镜像?
是为了提高复用率
注:Docker镜像层都是只读的,容器层是可写的。
当容器启动时,一个新的可写层被加载到镜像的顶部。
这一层通常被称作“容器层”,“容器层”之下的都叫“镜像层”
3.使用commit制作镜像
1.在ubuntu内添加vim功能然后制作成新的镜像
apt-get update
apt-get -y install vim
2.提交容器副本使之成为一个新的镜像
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签名]
docker commit -m="add vim" -a="qingbingwei" f36b2a311fb6 ubuntu:1.1