Docker鏡像加載原理

docker的鏡像其實是由一層一層的文件系統組成的,這種層級的文件系統叫作UnionFS 聯合文件系統linux

1.bootfs(boot file system)主要包括bootloader和kernel, bootloader主要是引導加載kernel,linux剛啓動時候會加載bootfs文件系統,在docker鏡像的最底層是bootfs。 這一層與咱們典型的Linux/Unix系統是同樣的,包括boot加載器和內核。當boot加載完以後,整個內核就在內存中了,此時內存的使用權已經有bootfs 交由內核,此時系統也會卸載bootfsdocker

2.rootfs(root file system), 在bootsfs之上,包含的就是典型的Linux系統中的/dev/,proc,/bin, /etc等標準目錄文件,rootfs就是各類不一樣的操做系統發行版,好比Ubuntu, Centos等,對於一個精簡的OS, rootfs能夠很小,只須要包括最基本的命令、工具和程序庫就能夠了,由於底層用Host的Kernel,本身只須要提供rootfs就行。因而可知,對於不一樣的linux發行版,bootds基本是一致的,rootfs會有差異,所以不一樣的發行版能夠共用bootfside

相關文章
相關標籤/搜索