1、docker运行中的容器本质上是一个宿主机上的进程;
2、使用linux的namespace,对进程进行隔离,使得在容器中看不到宿主机的进程;
3、使用linux的cgoups,对进程使用的资源进行限制,如cpu、network、memory;
4、使用linux的chroot,改变进程的根目录,使得在容器进程中看到的根目录是一个类似linux的文件系统,称为rootfs;
5、使用bind mount机制,可以将宿主机的目录,挂载到容器进程rootfs上;
6、docker镜像分三层:只读层、init层、可写层;
网友评论