tft每日頭條

 > 科技

 > docker查看容器配置文件目錄

docker查看容器配置文件目錄

科技 更新时间:2025-04-07 04:15:48

承接上文k8s自動化運維七

Docker文件簡介

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)1

  • containers

裡面都是容器,每啟動一個容器便會在這裡記錄

進到某一個容器目錄中,可以看到容器的日志文件

如果文件比較大的話,就可以清空該文件

cat /dev/null > xxx-json.log

  • image

默認裡面隻有一個overlay2目錄,存儲鏡像管理數據的目錄,以使用的存儲驅動命名,這是Centos系統,使用的驅動為overlay2。

1、/var/lib/docker/image/overlay2/distribution

從遠端拉到本地的鏡像相關元數據

2、/var/lib/docker/image/overlay2/imagedb

鏡像數據庫

3、/var/lib/docker/image/overlay2/imagedb/content

每一個鏡像都會配置digest,也就是鏡像ID。Content目錄裡會看到一個sha256的目錄,進入到該目錄下,看到都是以鏡像ID命名的文件,docker images看到的鏡像ID的前12位就來自這個文件。

4、/var/lib/docker/image/overlay2/layerdb

5、/var/lib/docker/image/overlay2/layerdb/mounts

每啟動一個容器,該目錄都會将容器的container ID記錄下來,當容器被停止了,container ID依舊存在,當容器被删除了,container ID才會被清除。

6、/var/lib/docker/image/overlay2/layerdb/sha256

隻記錄鏡像的信息,不記錄容器的信息,當鏡像有添加或删除時,此目錄的信息會有更新

7、/var/lib/docker/image/overlay2/repositories.json

記錄了鏡像的tag、鏡像ID等信息

  • network

docker的網關、容器的IP地址等信息

網關和網絡的名稱均與上面的配置文件裡一緻,可見上面的network目錄就是記載着docker的網絡信息。

  • overlay2

Docker存儲驅動,常見的有overlay、overlay2、aufs

每啟動一個容器就會有一個docker存儲挂載,如上所示,他們是共用宿主機的存儲,也就是這些docker存儲的挂載除了挂載點不一樣其他的都一樣。所有容器都共用一個存儲,當一個容器有數據變化,那麼連接容器的所有存儲的挂載信息都會更新産生變化。

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)2

可通過執行docker system prune 命令可用于清理磁盤,删除關閉的容器、無用的數據卷和網絡,以及dangling鏡像(即無tag的鏡像)

查看磁盤使用情況

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)3

磁盤馬上滿了,

  • 定位大文件du -sh /* |sort -rn | head

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)4

這樣一層一層查看

du -sh /var/lib/docker/* |sort -rn | head

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)5

就可以定位到這2個文件夾比較大

  • 清理volumes應用日志

查看volumes文件

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)6

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)7

# 查看該目錄下前N個大文件 du -am ./* | sort -nrk 1 | head -n 20

最終定位到./diff/app/logs/這個目錄下的文件比較大

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)8

這個文件下是應用的日志目錄,對應到pod容器裡面的這些日志

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)9

然後把大的日志文件清空即可

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)10

# 這種方式把日志文件清空,不會影響docker的正常運行 cat /dev/null > xibaoxiao-bwy_info.log

  • 清理containers容器日志1、查找占用空間最大的目錄是屬于哪個容器的

docker ps -q | xargs docker inspect --format '{{.State.Pid}}, {{.Name}}, {{.GraphDriver.Data.WorkDir}}' | grep "c1dc42ba3167ece0894405870176847e912afd9151a0adb77691ac51663b942f"

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)11

2、知道了是哪個容器之後,進入到該容器目錄,其中若有容器日志大文件,清空即可

docker查看容器配置文件目錄(k8s自動化運維八-如何清理docker存儲的大文件)12

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved