欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Docker中的分層結(jié)構(gòu)詳解

 更新時(shí)間:2025年09月19日 10:15:48   作者:Hud.  
UnionFS是Docker鏡像的基礎(chǔ),通過分層疊加技術(shù)實(shí)現(xiàn)多個(gè)文件系統(tǒng)的統(tǒng)一掛載,鏡像層為只讀,容器層為可寫,分層設(shè)計(jì)便于資源共享與復(fù)制遷移,提升存儲(chǔ)效率

Docker的分層結(jié)構(gòu)

UnionFS(聯(lián)合文件系統(tǒng))

Union文件系統(tǒng)(UnionFS)是一種分層、輕量級(jí)并且高性能的文件系統(tǒng),它支持對(duì)文件系統(tǒng)的修改作為一次提交來一層層的疊加,同時(shí)可以將不同目錄掛載到同一個(gè)虛擬文件系統(tǒng)下(unite several directories into a single virtual filesystem)。Union文件系統(tǒng)是Docker鏡像的基礎(chǔ)。鏡像可以通過分層來進(jìn)行繼承,基于基礎(chǔ)鏡像(沒有父鏡像),可以制作各種具體的應(yīng)用鏡像。

特性: 一次同時(shí)加載多個(gè)文件系統(tǒng),但從外面看起來,只能看到一個(gè)文件系統(tǒng),聯(lián)合加載會(huì)把各層文件系統(tǒng)疊加起來,這樣最終的文件系統(tǒng)會(huì)包含所有底層的文件和目錄。

Docker鏡像的加載原理

docker鏡像實(shí)際上由一層層的文件系統(tǒng)組成,這種層級(jí)的文件系統(tǒng)UnionFS。                                 

bootfs(boot file system)主要包含bootloader和kernel,bootloader主要是引導(dǎo)加載kernel,Linux剛啟動(dòng)時(shí)會(huì)加載bootfs文件系統(tǒng),在Docker鏡像的最底層是引導(dǎo)文件系統(tǒng)bootfs。

這一層與我們典型的Linux/Unix系統(tǒng)是一樣的,包含boot加載器和內(nèi)核。

當(dāng)boot加載完成之后整個(gè)內(nèi)核就都在內(nèi)存中了,此時(shí)內(nèi)存的使用權(quán)已由bootfs轉(zhuǎn)交給內(nèi)核,此時(shí)系統(tǒng)也會(huì)卸載bootfs。

rootfs(root file system),在bootfs之上。

包含的就是典型Linux系統(tǒng)中的/dev,/proc,/bin,/etc等標(biāo)準(zhǔn)目錄和文件。

rootfs就是各種不同的操作系統(tǒng)發(fā)行版,比如Ubuntu,Centos等等。

鏡像分層的一個(gè)最大的好處就在于:資源共享,方便復(fù)制遷移(為了復(fù)用)

比如說有多個(gè)鏡像都從相同的base鏡像構(gòu)建而來,那么Docker Host只需要在磁盤上保存一份base鏡像,同時(shí)內(nèi)存中也只需要加載一份base鏡像,就可以為所有的容器服務(wù)了。而且鏡像的每一層都可以被共享。

Docker鏡像層都是只讀的,容器層是可寫的當(dāng)容器啟動(dòng)時(shí),一個(gè)新的可寫層被加載到鏡像的頂部。這一層通常被稱作“容器層”,“容器層”之下的都叫“鏡像層”。

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • docker中間件部署超詳細(xì)步驟

    docker中間件部署超詳細(xì)步驟

    docker是現(xiàn)在很火的一項(xiàng)容器技術(shù),能夠幫助來部署我們來快速部署各類環(huán)境,這篇文章主要介紹了docker中間件部署的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • 如何解決Docker鏡像缺少字體的問題

    如何解決Docker鏡像缺少字體的問題

    在使用Spire.Office.Free將Excel轉(zhuǎn)換為HTML時(shí),遇到字體缺失錯(cuò)誤,通過在Dockerfile中添加字體文件,成功解決了問題,建議在遇到類似問題時(shí),可以嘗試在Dockerfile中添加缺失的字體文件
    2025-02-02
  • Docker 存儲(chǔ)卷(Volume)核心概念、類型與操作指南(最新整理)

    Docker 存儲(chǔ)卷(Volume)核心概念、類型與操作指南(最新整理)

    Docker 存儲(chǔ)卷 是 Docker 容器中用于持久化存儲(chǔ)數(shù)據(jù)的獨(dú)立文件系統(tǒng)區(qū)域,它獨(dú)立于容器的聯(lián)合文件系統(tǒng),其生命周期可以完全獨(dú)立于創(chuàng)建它的容器,本文給大家介紹Docker 存儲(chǔ)卷(Volume)核心概念、類型與操作指南,感興趣的朋友一起看看吧
    2025-09-09
  • Docker目錄映射方式

    Docker目錄映射方式

    總結(jié)了一些常用的Docker命令,包括查看、停止、重啟和刪除容器等操作,幫助用戶更好地管理容器
    2024-11-11
  • docker環(huán)境搭建JMeter+Grafana+influxdb可視化性能監(jiān)控平臺(tái)的教程

    docker環(huán)境搭建JMeter+Grafana+influxdb可視化性能監(jiān)控平臺(tái)的教程

    這篇文章主要介紹了docker下搭建JMeter+Grafana+influxdb可視化性能監(jiān)控平臺(tái),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-07-07
  • VSCode連接遠(yuǎn)程docker環(huán)境操作步驟

    VSCode連接遠(yuǎn)程docker環(huán)境操作步驟

    這篇文章主要介紹了如何在容器內(nèi)部署和配置,包括查看Docker版本、管理容器和鏡像、構(gòu)建容器、配置容器內(nèi)部環(huán)境、安裝和配置VSCode以及遠(yuǎn)程連接和配置遠(yuǎn)程Docker容器環(huán)境,需要的朋友可以參考下
    2025-03-03
  • Docker命令中的各種參數(shù)使用(run、v、rm、-w、-u、-e)

    Docker命令中的各種參數(shù)使用(run、v、rm、-w、-u、-e)

    本文主要介紹了Docker命令中的各種參數(shù)使用(run、v、rm、-w、-u、-e),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 詳解docker強(qiáng)制批量刪除none的image鏡像

    詳解docker強(qiáng)制批量刪除none的image鏡像

    這篇文章主要介紹了詳解docker強(qiáng)制批量刪除none的image鏡像,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Linux下使用Docker部署MinIO存儲(chǔ)服務(wù)實(shí)現(xiàn)遠(yuǎn)程上傳的方法

    Linux下使用Docker部署MinIO存儲(chǔ)服務(wù)實(shí)現(xiàn)遠(yuǎn)程上傳的方法

    MinIO是一個(gè)開源的對(duì)象存儲(chǔ)服務(wù)器,可以在各種環(huán)境中運(yùn)行,例如本地、Docker容器、Kubernetes集群等,本文主要是Linux下通過Docker部署MinIO存儲(chǔ)服務(wù)實(shí)現(xiàn)遠(yuǎn)程上傳的文章,感興趣的朋友一起看看吧
    2023-11-11
  • 如何解決docker commit后鏡像越來越大問題

    如何解決docker commit后鏡像越來越大問題

    解決Docker Commit后鏡像變大問題的方法:方法1直接打包容器并導(dǎo)入為鏡像;方法2將容器根目錄文件壓縮后導(dǎo)入為鏡像,方法1更優(yōu),在其他設(shè)備運(yùn)行時(shí)可能出現(xiàn)內(nèi)存不足錯(cuò)誤
    2025-03-03

最新評(píng)論