docker各目錄含義詳細(xì)解析
更新時間:2024年05月03日 08:45:40 作者:liujiangxu
Docker容器的目錄結(jié)構(gòu)通常是在構(gòu)建鏡像時定義的,它基于所使用的基礎(chǔ)鏡像,下面這篇文章主要給大家介紹了關(guān)于docker各目錄含義詳細(xì)解析的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
| 目錄 | 含義 |
|---|---|
| builder | 構(gòu)建docker鏡像的工具或過程 |
| buildkit | 用于構(gòu)建和打包容器鏡像,官方構(gòu)建引擎,支持多階段構(gòu)建、緩存管理、并行化構(gòu)建和多平臺構(gòu)建等功能 |
| containerd | 負(fù)責(zé)容器生命周期管理,能起、停、重啟,確保容器運行。負(fù)責(zé)鏡管理,提供一致的運行環(huán)境 |
| containers | docker容器,當(dāng)前運行的所有容器都會顯示到此目錄 |
| image | 在docker中,image是一個只讀的文件系統(tǒng),可被看作一個模板,用于創(chuàng)建容器實例 |
| network | docker網(wǎng)絡(luò)提供一種簡單、可擴展方式來組織管理容器。可為網(wǎng)絡(luò)提供網(wǎng)絡(luò)隔離、服務(wù)發(fā)現(xiàn)和負(fù)載均衡等 |
| overlay2 | 存儲驅(qū)動,用于實現(xiàn)容器與主機之間文件系統(tǒng)層的隔離。允許多個容器共享相同的基礎(chǔ)文件系統(tǒng)鏡像,又能保證每個容器保持獨立的文件系統(tǒng)更改。df命令可以列舉容器運行中所需文件和目錄。所謂的聯(lián)合掛載 |
| plugins | docker插件,用于擴展docker |
| runtimes | docker默認(rèn)使用runc作為容器運行時 |
| swarm | docker集群管理工具,用于將多個docker組織成一個集群,以便統(tǒng)一管理和調(diào)度 |
| tmp | 臨時文件夾,用于存放臨時文件或數(shù)據(jù) |
| trust | 在Docker中,信任(trust)通常與內(nèi)容信任(Content Trust)相關(guān)。確保鏡像在傳輸過程中未被篡改 |
| volumes | docker卷是容器可以從中讀取和寫入的特定文件類型層,卷為持久化存儲和共享數(shù)據(jù),即使容器停止和刪除(運行后的容器都會在次目錄下自動創(chuàng)建相應(yīng)的id數(shù)據(jù)目錄) |
聯(lián)合掛載
- 綁定掛載將主機上的文件或目錄股掛載到容器的方式。通過運行容器時使用-v或者–mount參數(shù)來指定綁定掛載。
例如: docker run -v /data/path:/container/path image_name ,使其容器和主機之間共享文件和目錄 - 命名卷掛載卷是將docker數(shù)據(jù)卷掛載到容器中。數(shù)據(jù)卷是一個可供一個或多個容器使用的特殊目錄,用于存儲數(shù)據(jù)和共享數(shù)據(jù),獨立于容器的生命周期,容器可以在掛載點讀取和寫入數(shù)據(jù)。
例如:docker run -v volume_name:/container/path image_name - 臨時文件系統(tǒng)掛載臨時文件系統(tǒng)掛載允許將臨時文件系統(tǒng)掛載到容器的指定路徑??梢酝ㄟ^在運行容器時使用–tmpfs參數(shù)來指定臨時文件系統(tǒng)掛載

- 當(dāng)運行多個docker容器時,每個容器都使用overlay2存儲驅(qū)動來管理其文件系統(tǒng)的層,它允許docker將多個文件疊加在一起,形成一個統(tǒng)一的文件系統(tǒng)
- 每個overlay行代表一個docker容器的overlay2文件系統(tǒng)掛載點,當(dāng)使用df命令,這些掛載點都會被統(tǒng)計出來,它們確實占用主機磁盤利用率,wc -l 統(tǒng)計的數(shù)量和在運行中的docker容器是保持一致。
- 每個容器還會有個shm掛載點,用于提供共享內(nèi)存,shm通常為64mb,并且不會被計入容器磁盤使用情況因為它們使用的是RAM或tmpfs(臨時文件系統(tǒng)),而不是磁盤空間。
containers目錄
- containers目錄下存儲所有正在運行或已經(jīng)停止的容器相關(guān)數(shù)據(jù),每個容器在該目錄下以容器id創(chuàng)建各子目錄,包含配置,狀態(tài),日志等信息。不推薦直接編輯這些文件
- 當(dāng)容器被刪除后該目錄下對應(yīng)的容器子目錄也將自動被清理
| 文件 | 含義 |
|---|---|
| ID-json.log | 容器日志 |
| config.v2.json | 容器配置包含容器各種參數(shù)和設(shè)置 |
| hostconfig.json | 包含docker守護(hù)進(jìn)程為容器的配置,綁定掛載,端口映射,環(huán)境變量等 |
| hostname | 容器主機名 |
| hosts | 容器/etc/hosts文件,包含容器DNS解析信息 |
| mounts | 容器掛載點相關(guān)信息 |
| resolv.conf | 容器DNS解析配置,類似宿主機/etc/resolv.conf文件 |
| resolv.conf.hash | 容器resolv.conf文件的哈希值,用于檢查文件是否已被修改或損壞 |
volumes目錄
- 在docker中volume是用于管理容器數(shù)據(jù)的命名和目錄。數(shù)據(jù)卷是一種特殊類型的存儲,允許持久化容器數(shù)據(jù)
- 在docker/volumes/下會存放所有運行使用命名卷的方式掛載數(shù)據(jù)目錄。該目錄下不顯示綁定掛載的數(shù)據(jù)卷列表(-v /data/ceshi:/data:ceshi)
- 數(shù)據(jù)卷獨立于容器的生命周期,即使容器被刪除或重新創(chuàng)建,數(shù)據(jù)卷中的數(shù)據(jù)仍然可以保留下來,不會丟失。使容器間的數(shù)據(jù)共享變得簡單。不同容器可以掛載同一個數(shù)據(jù)卷,共享數(shù)據(jù)。
資源清理
| 命令 | 含義 |
|---|---|
| docker system prune -a(強制) | 清除所有停止的容器、未使用的網(wǎng)絡(luò)、懸掛的鏡像(沒有被任何容器引用的鏡像)、未使用的卷 |
| docker container prune( -f 強制) | 清理所有停止的容器,這些容器不再運行,但仍然占用系統(tǒng)資源 |
| docker image prune | 清理未使用的鏡像。未使用的鏡像是指那些沒有在任何容器中使用的鏡像 |
| docker network prune | 清理未使用的 Docker 網(wǎng)絡(luò) |
| docker volume prune | 清理未使用的卷。在 Docker 中,卷用于持久化數(shù)據(jù),即使容器被刪除,卷中的數(shù)據(jù)也會保留 |
總結(jié)
到此這篇關(guān)于docker各目錄含義詳細(xì)解析的文章就介紹到這了,更多相關(guān)docker目錄含義內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
docker離線部署docker,部署業(yè)務(wù)方式
這篇文章主要介紹了docker離線部署docker,部署業(yè)務(wù)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
2個節(jié)點的docker容器網(wǎng)絡(luò)實現(xiàn)通信過程
文章介紹了五種實現(xiàn)跨節(jié)點Docker容器通信的方法,涵蓋host網(wǎng)絡(luò)、Swarm集群、網(wǎng)絡(luò)插件和自建VPN,適用于不同場景如調(diào)試、生產(chǎn)環(huán)境及高可用需求,并推薦根據(jù)部署復(fù)雜度選擇方案2025-07-07
docker?mysql5.7如何設(shè)置不區(qū)分大小寫
本文主要介紹了docker?mysql5.7如何設(shè)置不區(qū)分大小寫,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-07-07
Docker本地鏡像的導(dǎo)出導(dǎo)入兩種方案介紹
這篇文章主要介紹了Docker本地鏡像的導(dǎo)出導(dǎo)入兩種方案的相關(guān)資料,兩種方法分別是export/import和save/load兩種方案,文中并對比了它們的差別和應(yīng)用場景,需要的朋友可以參考下2025-03-03
Docker中數(shù)據(jù)卷(volume)管理的兩種方式
數(shù)據(jù)卷有兩種形式,一種是容器中的某個目錄,它可以被別的容器引用,只要有一個容器引用了這個數(shù)據(jù)卷,數(shù)據(jù)就不會被刪除;另一種數(shù)據(jù)卷是將容器中的數(shù)據(jù)卷和宿主機的目錄進(jìn)行掛載。 數(shù)據(jù)卷可以在多個容器之間共享,修改數(shù)據(jù)卷不會影響鏡像2021-07-07

