如何增加Docker使用的空间(数据空间总数)?该值小于磁盘大小的一半

时间:2017-11-23 13:44:58

标签: docker

很多时候,构建Dockerfile时出现此错误:

devmapper:精简池有157168个空闲数据块,小于最低要求的163840个空闲数据块。在精简池中创建更多可用空间或使用dm.min_free_space选项更改行为

我的磁盘完全没有250Go,当我执行docker版本时,我可以在存储部分看到:

Storage Driver: devicemapper
 Pool Name: docker-253:0-19468577-pool
 Pool Blocksize: 65.54kB
 Base Device Size: 21.47GB
 Backing Filesystem: xfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 97.03GB
 Data Space Total: 107.4GB
 Data Space Available: 10.35GB
 Metadata Space Used: 83.67MB
 Metadata Space Total: 2.147GB
 Metadata Space Available: 2.064GB
 Thin Pool Minimum Free Space: 10.74GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.135-RHEL7 (2016-11-16)

我在停止泊坞服务后试了一下: 我试过了:

dockerd --storage-opt dm.thinpooldev dm.min_free_space=3%
dockerd --storage-opt  dm.thinp_autoextend_percent

但那些命令没有成功。

如何增加数据空间总量(磁盘上的可用空间超过107.4GB的2倍)? 或者如何减少精简池最小可用空间:10.74GB?

2 个答案:

答案 0 :(得分:0)

可能是因为码头工人用容器,图像或卷占据其指定的空间。 要查看实际Docker的用法,请运行:

$ docker system df

TYPE                TOTAL               ACTIVE              SIZE             RECLAIMABLE
Images              135                 27                  41.33GB             33.77GB (81%)
Containers          34                  32                  509.4MB             15.21kB (0%)
Local Volumes       387                 3                   3.706GB             3.706GB (99%)

Prune有助于清理:

$ docker system prune
WARNING! This will remove:
    - all stopped containers
    - all networks not used by at least one container
    - all dangling images
    - all build cache
Are you sure you want to continue? [y/N] y

(有关较旧的Docker版本,请参阅Prune页面中的替代方案)。

请注意,默认情况下不会删除卷,以防止丢失数据。您必须自己指定,添加--volumes或手动清除它们。

答案 1 :(得分:0)

如果您清理/修剪后仍然有问题,这就是您实际修改最小空间设置的方式。

创建/修改此文件: /etc/docker/daemon.json

{
   "storage-opts": [
    "dm.min_free_space=1%"
    ]
}