簡體   English   中英

為什么我的 docker 卷的磁盤空間不足?

[英]Why did my docker volume run out of disk space?

我正在使用持久卷。 安裝在容器中時,我收到一條錯誤消息,指出設備上沒有剩余空間。 經檢查,卷大小為 256GB。 但是,主機上有更多的空間。

一些進一步的細節: docker 存儲驅動程序是overlay2 df顯示有一個 256GB 的文件系統/dev/mapper/vg1-docker 在下載過程中(通過互聯網),這個文件系統變得 100% 滿,並且docker沒有自動調整文件系統的大小以騰出更多空間,即使主機上有更多可用空間。

主機是原生的linux(ubuntu)。 這是df -i的 output :

Filesystem               Inodes  IUsed    IFree IUse% Mounted on
udev                   24754746    429 24754317    1% /dev
tmpfs                  24757974    762 24757212    1% /run
/dev/xvda2              6537216 142008  6395208    3% /
tmpfs                  24757974      1 24757973    1% /dev/shm
tmpfs                  24757974      3 24757971    1% /run/lock
tmpfs                  24757974     18 24757956    1% /sys/fs/cgroup
/dev/mapper/vg1-docker 16384000 985506 15398494    7% /var/lib/docker
/dev/xvda1                65536    313    65223    1% /boot
tmpfs                  24757974     10 24757964    1% /run/user/1001

我找不到有關增加 docker 卷大小的任何信息。

請注意,這不是為什么 Docker 卷空間不足? .

df 顯示有一個 256GB 的文件系統 /dev/mapper/vg1-docker。 在下載過程中(通過互聯網),這個文件系統變得 100% 滿,並且 docker 沒有自動調整文件系統的大小以騰出更多空間,即使主機上有更多可用空間。

我相信你自己已經回答了這個問題。 Docker 磁盤空間不足,因為您將其隔離到的分區磁盤空間不足。 Docker 不會也不應該自動調整磁盤空間大小。 這是系統管理員的任務,而不是容器引擎。 為 docker 創建單獨分區的目的通常是為了確保 docker 不會占用根文件系統上的所有磁盤空間,這可能會導致整個主機崩潰。

您可以通過此命令檢查計算機上的當前卷列表

docker volume ls

在你的情況下,我認為你有太多的 docker 容器隨着時間的推移在你的機器上運行(你的 docker 卷使用總量不應超過磁盤空間的 10%)。 最簡單的方法,就是用這個命令剪掉不必要的過期卷,收回磁盤空間

docker volume prune -f 

如果您需要兌換更多空間。 只需修剪未使用的圖像和網絡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM