最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker容器臨時(shí)文件去除,服務(wù)器容量空間詳解

 更新時(shí)間:2025年10月15日 10:47:01   作者:我吃西紅柿11  
這篇文章主要介紹了docker容器臨時(shí)文件去除,服務(wù)器容量空間,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

概述

接到告警提醒,服務(wù)器容量不足,去查看了一下,發(fā)現(xiàn)確實(shí)100g左右容量已基本用完;

分析

1、查看根目錄下哪些文件夾占用容量較大

使用命令“ du -ah --max-depth=1 / ” 查看目標(biāo)目錄下所有文件夾的容量:

可以看到目錄 /var 下面占用了很大的容量,繼續(xù)使用命令查看“du -ah --max-depth=1 /var”:

繼續(xù)跟進(jìn)lib目錄“du -ah --max-depth=1 /var/lib”:

繼續(xù)下鉆“du -ah --max-depth=1 /var/lib/docker/”:

2、看到這里發(fā)現(xiàn)/var/lib/docker/overlay2 下的容量非常大

在 Linux 系統(tǒng)中,/var/lib/docker/overlay2 是 Docker 容器引擎使用 overlay2 存儲(chǔ)驅(qū)動(dòng) 時(shí)的核心數(shù)據(jù)存儲(chǔ)目錄,主要用于管理 Docker 鏡像和容器的文件系統(tǒng)分層數(shù)據(jù)。 

具體作用:

Docker 采用 分層存儲(chǔ)機(jī)制(類似 “棧” 的結(jié)構(gòu)),而 overlay2 是 Docker 推薦的存儲(chǔ)驅(qū)動(dòng)之一(基于 Linux 內(nèi)核的 overlayfs 技術(shù)),/var/lib/docker/overlay2 正是這種機(jī)制的實(shí)際數(shù)據(jù)存放位置,主要包含:

1、 鏡像層(Image Layers):

  • Docker 鏡像由多個(gè)只讀層(Layer)組成(例如基礎(chǔ)系統(tǒng)層、依賴庫層、應(yīng)用層等),這些層的實(shí)際文件數(shù)據(jù)就存儲(chǔ)在該目錄下。
  • 多個(gè)鏡像可能共享相同的基礎(chǔ)層,從而節(jié)省空間。

2、容器讀寫層(Container Layers):

當(dāng)容器啟動(dòng)時(shí),Docker 會(huì)在鏡像只讀層之上添加一個(gè) 可寫層(用于容器運(yùn)行時(shí)的文件修改、新增、刪除等操作),這部分臨時(shí)數(shù)據(jù)也存儲(chǔ)在 overlay2 目錄中。

容器停止后,可寫層不會(huì)自動(dòng)刪除(除非手動(dòng)清理)。

元數(shù)據(jù):

3、記錄各層的關(guān)聯(lián)關(guān)系、校驗(yàn)信息等,確保 Docker 能正確組裝鏡像和容器的文件系統(tǒng)。 

為什么這個(gè)目錄會(huì)很大?

  • 長期使用 Docker 后,未清理的 舊鏡像、停止的容器(及其可寫層)、未使用的臨時(shí)層 會(huì)不斷累積,導(dǎo)致目錄占用空間增大。
  • 容器運(yùn)行過程中產(chǎn)生的日志、臨時(shí)文件、緩存等也可能存放在可寫層中,進(jìn)一步占用空間。

如何清理空間?

如果該目錄占用過大,可以通過 Docker 自帶的命令安全清理(操作前建議確認(rèn)不需要的資源):

清理所有未使用的資源(停止的容器、未被引用的鏡像、懸空鏡像、未使用的卷等):

本次操作就是用下面的這個(gè)命令:

bash
docker system prune -a --volumes
  • -a:刪除所有未被容器引用的鏡像(包括未打標(biāo)簽的 “懸空鏡像”)。
  • –volumes:同時(shí)清理未被使用的數(shù)據(jù)卷(謹(jǐn)慎使用,確保卷中無重要數(shù)據(jù))。

單獨(dú)清理無用鏡像:

bash
docker image prune -a

單獨(dú)清理停止的容器:

bash
docker container prune

注意:

不要直接手動(dòng)刪除 overlay2 目錄下的文件(可能導(dǎo)致 Docker 數(shù)據(jù)損壞,容器 / 鏡像無法正常使用)。

清理前確保重要容器已停止或備份,避免誤刪正在使用的資源。

通過以上操作,通常能顯著減少 overlay2 目錄的占用空間。

3)執(zhí)行完以上操作發(fā)現(xiàn)容量還是比較大

繼續(xù)使用“du -ah --max-depth=1 /var/lib/docker/overlay2/”查看目錄的大?。?/p>

發(fā)現(xiàn)紅框這個(gè)文件非常大,所以就看這個(gè)地方:

911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836 的子目錄占用(43G),其他目錄占用空間較小。下面具體解釋并提供處理思路: 

這些哈希命名的目錄是什么?

overlay2 目錄下的子目錄名稱是隨機(jī)哈希值,每個(gè)目錄對(duì)應(yīng) Docker 的一個(gè) 存儲(chǔ)層(可能是鏡像的只讀層,或容器的可寫層):

  • 帶 -init 后綴的目錄(如 16fd4ddd…-init)通常是容器初始化時(shí)的臨時(shí)層,空間很小。
  • 其他無后綴的目錄是常規(guī)的鏡像層或容器運(yùn)行時(shí)的可寫層。

你看到的 911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836 就是一個(gè)占用大量空間的層(極可能是某個(gè)容器的可寫層,因?yàn)殓R像層通常不會(huì)單獨(dú)這么大,且多個(gè)鏡像會(huì)共享層)。

如何找到這個(gè)大目錄對(duì)應(yīng)的容器 / 鏡像?

要確定這個(gè) 43G 的層屬于哪個(gè)容器或鏡像,需要通過 Docker 的元數(shù)據(jù)關(guān)聯(lián)。步驟如下: 

查看所有容器的存儲(chǔ)層信息:

運(yùn)行以下命令,查找哪個(gè)容器的 GraphDriver.Data.MergedDir 或 UpperDir 包含這個(gè)哈希目錄:

bash
docker inspect $(docker ps -aq) | grep -B 10 "911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836"

輸出中會(huì)顯示容器的 Name 或 Id,說明這個(gè)層是該容器的可寫層(容器運(yùn)行時(shí)產(chǎn)生的文件都存在這里)。

如果不是容器,再檢查鏡像:

若上述命令沒結(jié)果,可能是某個(gè)鏡像的層(較少見,因?yàn)殓R像層通常被共享),可通過鏡像元數(shù)據(jù)查找:

bash
docker inspect $(docker images -q) | grep -B 10 "911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836"

執(zhí)行命令:

docker inspect 結(jié)果來看,這個(gè) 43G 的大目錄 911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836 明確屬于某個(gè)容器的 可寫層(UpperDir 指向該目錄,這是容器運(yùn)行時(shí)寫入數(shù)據(jù)的位置)。

第一步:找到這個(gè)容器的具體信息(ID / 名稱)

你的 docker inspect 輸出只顯示了部分細(xì)節(jié),需要進(jìn)一步定位對(duì)應(yīng)的容器??梢杂靡韵旅钪苯诱业皆撊萜鞯?ID 和名稱:

bash
# 遍歷所有容器,找到包含該哈希的容器,并輸出其ID和名稱
for container in $(docker ps -aq); do
  if docker inspect $container | grep -q "911d4b0c8e6ef3ad8cad514279b0b0ba28bb6c6a32cac154aba1d4a703c85836"; then
    echo "容器ID: $container"
    docker inspect --format '{{.Name}}' $container  # 輸出容器名稱
  fi
done

運(yùn)行后會(huì)得到類似結(jié)果(示例):

plaintext
容器ID: abc123456
/nginx-app  # 容器名稱

第二步:分析容器內(nèi)的大文件來源

確定容器后,需要進(jìn)入容器內(nèi)部,查看哪些文件占用了大量空間:

  1. 先檢查容器狀態(tài)(是否在運(yùn)行):
bash
docker ps | grep 容器ID/名稱  # 若有輸出,說明正在運(yùn)行;否則是已停止
  1. 進(jìn)入容器內(nèi)部查找大文件:
bash
# 若容器運(yùn)行中,直接進(jìn)入
docker exec -it 容器ID/名稱 /bin/bash
# 查看目錄下最大的20個(gè)文件
du -a / 2>/dev/null | sort -nr | head -n 20

絕對(duì)不要手動(dòng)刪除 overlay2 目錄下的文件,否則可能導(dǎo)致 Docker 數(shù)據(jù)損壞。

可以發(fā)現(xiàn)/tmp 容量河大有22g; 進(jìn)入該目錄看有什么文件:

查看該目錄下最大的20個(gè)文件:

刪除文件

 rm -f /tmp/+~JF*.tmp
# 示例:刪除7天前的日志(假設(shè)日志按日期命名,如 sys-console.2025-08-05.log)
find /juzi/server/logs -name "*.log" -mtime +7 -delete

注意事項(xiàng)

清理文件時(shí),確保不刪除應(yīng)用運(yùn)行必需的臨時(shí)文件(如正在使用的緩存),必要時(shí)先暫停應(yīng)用再清理。

操作后建議重啟容器,確保空間釋放生效(docker restart 容器ID)。

通過以上步驟,可顯著減少容器占用的空間,并避免未來再次出現(xiàn)類似問題。

從文件路徑(/tmp 臨時(shí)目錄)和命名格式(+~JF 開頭的 .tmp 文件)來看,這些文件大概率是辦公軟件(如 LibreOffice、OpenOffice 等)在編輯文檔時(shí)生成的臨時(shí)備份文件。 

具體說明:

  • 臨時(shí)備份文件的作用

LibreOffice、OpenOffice 等辦公軟件在編輯文檔(如 Word 文檔、Excel 表格等)時(shí),會(huì)自動(dòng)創(chuàng)建臨時(shí)文件,用于:

實(shí)時(shí)保存用戶的編輯內(nèi)容,防止程序崩潰、意外關(guān)閉時(shí)丟失數(shù)據(jù);

作為文檔的臨時(shí)緩存,提升編輯時(shí)的響應(yīng)速度。

這類文件的命名通常包含隨機(jī)字符(如這里的 JF 后接一串?dāng)?shù)字),并以 .tmp 為后綴,存放于系統(tǒng)臨時(shí)目錄(/tmp)。

  • 為何會(huì)殘留?

正常情況下,當(dāng)你關(guān)閉辦公軟件或保存文檔后,這些臨時(shí)文件會(huì)被自動(dòng)刪除。但如果程序異常退出(如強(qiáng)制關(guān)閉、崩潰),臨時(shí)文件可能來不及清理,就會(huì)殘留在 /tmp 目錄中。

關(guān)于 ip2region.xdb

這個(gè)文件是一個(gè)IP 地址定位數(shù)據(jù)庫(ip2region 是一個(gè)常用的開源 IP 庫),用于將 IP 地址解析為具體的地理位置(如國家、城市等)。

很多應(yīng)用程序(如日志分析工具、后臺(tái)服務(wù))可能會(huì)臨時(shí)使用這個(gè)庫文件,用完后可能留在 /tmp 目錄。

  • 處理建議:

如果確認(rèn)近期沒有正在編輯的辦公文檔,這些 +~JF*.tmp 文件可以安全刪除(避免占用磁盤空間);

ip2region.xdb 若暫時(shí)不用,也可刪除,后續(xù)有程序需要時(shí)會(huì)重新生成或下載。

刪除命令(謹(jǐn)慎操作,確保不再需要):

bash
rm -f /tmp/+~JF*.tmp /tmp/ip2region.xdb

總結(jié)

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

相關(guān)文章

  • Docker部署Minio集群的實(shí)現(xiàn)步驟

    Docker部署Minio集群的實(shí)現(xiàn)步驟

    本文介紹 Docker Compose 部署 Minio 集群的方式,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-05-05
  • Dify Docker私有化部署遇到的問題及解決

    Dify Docker私有化部署遇到的問題及解決

    Dify 1.01 在 Docker Desktop 4.38.0 上部署時(shí),db 無法啟動(dòng),權(quán)限問題導(dǎo)致,解決方法是修改 `docker-compose.yaml` 文件,為 `db` 配置正確的權(quán)限,并創(chuàng)建一個(gè)名為 `postgres-data101` 的 Volume 區(qū)
    2026-01-01
  • docker在ubuntu14.04下的安裝步驟

    docker在ubuntu14.04下的安裝步驟

    這篇文章主要介紹了docker在ubuntu14.04下的安裝步驟,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Dockerfile中的copy命令使用

    Dockerfile中的copy命令使用

    在使用Dockerfile中的copy命令時(shí),如果使用相對(duì)路徑并且文件不在當(dāng)前目錄下,會(huì)導(dǎo)致構(gòu)建失敗,需要使用絕對(duì)路徑或者將文件移動(dòng)到Dockerfile所在的目錄下
    2025-02-02
  • DockerCE之執(zhí)行docker info出現(xiàn)兩條警告信息及解決方案

    DockerCE之執(zhí)行docker info出現(xiàn)兩條警告信息及解決方案

    這篇文章主要介紹了DockerCE之執(zhí)行docker info出現(xiàn)兩條警告信息及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 詳解docker部署Jenkins新手使用教程

    詳解docker部署Jenkins新手使用教程

    這篇文章主要介紹了詳解docker部署Jenkins新手使用教程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • docker容器動(dòng)態(tài)添加端口號(hào)的方法

    docker容器動(dòng)態(tài)添加端口號(hào)的方法

    這篇文章主要介紹了docker容器動(dòng)態(tài)添加端口號(hào)的方法,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-05-05
  • Docker容器內(nèi)部無法訪問外網(wǎng)原因以及解決辦法

    Docker容器內(nèi)部無法訪問外網(wǎng)原因以及解決辦法

    最近在工作時(shí)遇到一個(gè)問題,這里給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于Docker容器內(nèi)部無法訪問外網(wǎng)原因以及解決辦法,文中給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-06-06
  • Docker 啟動(dòng)Redis 并設(shè)置密碼的操作

    Docker 啟動(dòng)Redis 并設(shè)置密碼的操作

    這篇文章主要介紹了Docker 啟動(dòng)Redis 并設(shè)置密碼的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Docker 構(gòu)建多平臺(tái)鏡像的多種方法

    Docker 構(gòu)建多平臺(tái)鏡像的多種方法

    本文介紹 Docker 構(gòu)建多平臺(tái)鏡像的方式,包括鏡像與平臺(tái)的關(guān)系介紹、利用 manifest 合并鏡像,及使用 buildx 打包多平臺(tái)鏡像的方法,下面就來詳細(xì)的介紹一下
    2026-05-05

最新評(píng)論

苍南县| 垣曲县| 边坝县| 栾城县| 刚察县| 方城县| 清新县| 三江| 阳泉市| 玛多县| 佛坪县| 曲阜市| 巴东县| 达拉特旗| 行唐县| 恩平市| 盐山县| 海原县| 平远县| 通辽市| 弥勒县| 上虞市| 峨眉山市| 富锦市| 逊克县| 梧州市| 萨迦县| 科技| 三穗县| 罗甸县| 怀集县| 蓬莱市| 兴化市| 邢台县| 龙门县| 中山市| 宁德市| 抚宁县| 苍梧县| 深州市| 淳化县|