1. 程式人生 > >Docker佔滿磁碟空間的解決辦法

Docker佔滿磁碟空間的解決辦法

通過命令可以觀察到/var/lib/docker目錄很大,我的主機只有20G,這個目錄佔了18G;原因是devicemapper的空間設的太大,通過docker info列印的Data Space Total引數可以看到,預設是107.4G。 

思路如下:

備份當前容器、映象;

刪除/var/lib/docker目錄;

使用dd命令重設大小;

恢復容器、映象;

工具:

需要額外空間儲存備份檔案,可以掛載一個u盤或者雲盤。

docker save 可以匯出映象 tar檔案;

docker export 可以匯出容器 tar檔案;

備份好之後停止docker

# /etc/init.d/docker stop

刪除/var/lib/docker目錄;

# mkdir -p /var/lib/docker/devicemapper/devicemapper
# dd if=/dev/zero of=/var/lib/docker/devicemapper/devicemapper/data bs=1M count=0 seek=8192
建立的檔案最大為 1M * 8192 = 8G

啟動docker

# /etc/init.d/docker start


使用docker info看看Data Space Total,檢查是否設定成功

docker load 可以匯入映象tar檔案為 映象

注意load用法為:docker load image1:new<image1.tar

docker import 可以匯入容器tar檔案為 映象
注意import用法為: cat container1.tar |docker import - container1:new