Docker服务器存储资源池不足的问题解决(docker容器内存不足)

admin 201 2022-07-25

阿里云服务器优惠多,折扣错,惊喜多,请咨询:www.wqiis.com

目录一、问题描述 二、问题分析 三、解决问题 1、查看 Docker 磁盘使用情况 2、对可回收存储资源执行清理命令 总结

系统环境:

Docker服务器存储资源池不足的问题解决(docker容器内存不足)

Docker 版本:19.03.13 操作系统版本:CentOS 7.8

一、问题描述

最近在执行 Docker 运行命令启动镜像时候,无法正常执行 Docker 启动镜像命令,提示了如下错误信息:

Error: Error response from daemon: devmapper: Thin Pool has 163051 free data blocks which is less than minimum required 163840 free data blocks. Create more free space in thin pool or use dm.min_free_space option to change behavior

二、问题分析

根据提示的错误信息来看,是 Docker 的 Thin Pool 池空间不足导致,可用需要创建更多该池的可用空间或者使用 dm.min_free_space 选项改变池的可用空间大小。

我们通过下面命令查看一下服务器上 Docker 信息,观察资源使用情况:

$ docker info

显示的内容如下:

... Data Space Total: 507.4GB Data Space Available: 100.67GB Metadata Space Used: 100.4MB Metadata Space Total: 20.147GB Metadata Space Available: 20.047GB Thin Pool Minimum Free Space: 100.74GB Deferred Removal Enabled: true Deferred Deletion Enabled: true Deferred Deleted Device Count: 0 ...

通过上面信息,观察到 Thin Pool Minimum Free Space = 100.74GB 而 Data Space Available = 100.67,这说明 Data Space Available 可用空间以及低于 Thin Pool 所需最小空间,这会导致镜像无法正常启动。

三、解决问题

1、查看 Docker 磁盘使用情况

我们可以使用下面命令查看 Docker 磁盘使用情况:

$ docker system df TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 500 12 38.31GB 34.5GB (90%) Containers 64 21 157MB 4.109MB (2%) Local Volumes 37 18 0B 0B Build Cache 0 0

其中总共列出如下信息:

TYPE:资源类型; TOTAL:资源总数目; ACTIVE:资源处于活动状态数目; SIZE:资源使用空间大小; RECLAIMABLE:可回收资源大小;

其中的各个组件是指:

Images:镜像占用存储空间大小; Containers:启动的容器占用存储空间大小 Local Volumes:本地挂载卷使用存储空间大小; Build Cache:构建缓存占用存储空间大小;

如果想详细查看系统占用情况,可用加 -v 命令查看各个资源使用存储详情

2、对可回收存储资源执行清理命令

Docker 提供了存储资源回收功能,命令如下:

清理命令详情请查看 Docker 官方文档:docker system prune

$ docker system prune

该命令会清理所有未使用的容器,网络,映像(悬空的和未引用的)以及卷(可选),执行该命令后等待一段时间,回收足够的资源后 Docker 运行镜像恢复正常。

总结

上一篇:大数据存储的方式有哪几种 它和传统的数据存储有何区别(大数据存储的方式有哪几种和优缺点)
下一篇:哪些用户适合使用云服务器 硬件服务器和云服务器区别(什么云服务器最好用)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~