Docker学习笔记(二)

来源:互联网 发布:手机不root改mac地址 编辑:程序博客网 时间:2024/05/16 17:28

cgroups

docker使用cgroups提供容器隔离。
cgroups的作用(生搬硬套):
1. 限制进程组的资源占用(cpu, 内存)
2. 为进程组制作PID, UTS, IPC,网络,用户及装载名字空间????
一直出现的关键字是名字空间, 这里的名字空间是内核里的名字空间。
还有一个关键字隔离
某一个PID命名空间允许它里面的进程使用隔离的PID,与主PID命名空间隔离开来,(这里的主PID命名空间可以认为是操作系统所看见的PID命名空间),用cgroups创建一个环境,让进程在这个环境上运行,并与操作系统的其他进程隔离开。在这个环境上运行的进程用的是已经加载和运行的内核。
在自己的命名空间中,可以创建自己的进程,与操作系统的进程隔离。隔离才是目的,隔离了才能得到

Union文件系统

特点:分层积累的变化。在union文件系统中,文件系统可以状态再其他文件系统之上。
装载后的系统就像一个拥有变化的集合??(没表达清楚,拥有其他文件系统的变化??)
这里解释一下,容器为什么是短暂的,容器是在镜像的基础上创建的,镜像有自己的文件系统,当你创建一个容器的时候,它会在原有的文件系统上加载一个新创建的空白的union文件系统,由于union文件系统是空白,就没有变化会应用到镜像的文件系统上,当你创建一下变化时,文件会体现出来,不过当你容器的生存期过后,union文件系统被丢弃。只留下源镜像的文件系统。

0 0
原创粉丝点击