Docker镜像导致centos-root根分区容量爆满

  当虚拟机服务器运行Docker久了后,发现Docker的文件越来越大,某天发现此台机上的数据库访问不了了,再重启数据库等日志,提示空间不足,查看磁盘空间:

  root分区满载啊,前段时间还有不少空间的,查下什么大文件内容占了空间。

find / -xdev -size +100M -exec ls -l {} \;

最近用的docker越来越大 才导致磁盘满了。

那下面要么清理docker,要么扩展磁盘。

两步都做吧,先简单清理docker,或许可以清理一些空间出来。

先 docker images -a 看一下是不是有过多的 <none> 的镜像了,其中有一部分是这类镜像。 # 删除所有未打标签的镜像.

docker rmi $(docker images -aq -f "dangling=true")

容器的内容也是在存储层的。可以 docker ps -a 看一下是不是有很多之前的容器没有删掉的,可以 docker rm $(docker ps -aq -f "dangling=true") 来删除。

垃圾回收

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock -v /etc:/etc:ro spotify/docker-gc

有些容器明明stop了,但是它还是占着某些资源

docker rm -f $(docker ps -a | grep Exit | awk '{ print $1 }')

使用docker自带命令先清理一次。

docker system prune -a

注意:

这可能会清除掉images,慎用。

再进行了上面对docker处理后,下面对磁盘扩容。

扩展根分区

VMware分配空间

选中虚拟机->虚拟机设置->添加=》硬盘->添加15G,可以看看第一张图的硬盘1是SCSI(0:0)新加的硬盘2是SCSI(0:1)

先看一下现有磁盘情况:

# fdisk -l

对新磁盘进行分区:

# fdisk /dev/sdb

在fdisk的交互模式中,依次输入:

n --创建新分区 p --创建主分区 <回车> --默认分区编号 <回车> --默认起始扇区位置。 <回车> --默认结束扇区位置。 w --写入分区表

这样就把整个磁盘分成了一个区。

再看一下现有磁盘情况:

# fdisk -l

已经多出了一个新分区:

将新分区用于扩展/root

先看一下卷分组:

# vgdisplay -v

可以看到当前卷分组名为"centos_h32"。

为之前新增的分区创建物理卷:

# pvcreate /dev/sdb1

查看结果:

# pvdisplay

扩展卷分组,"centos_h32"是vgdisplay命令查到的卷分组名:

# vgextend centos_h32 /dev/sdb1

提示成功扩展。

下面查看一下逻辑卷:

# lvdisplay

可以看到/dev/centos_h32/root目前的LV Size是17.47GiB。

下面扩展逻辑卷/dev/centos_h32/root:

# lvextend -L +15G /dev/centos_h32/root

注:+15G是我们新增加的分区大小。

扩展后,还要执行一步 将文件系统扩大:

# xfs_growfs /dev/centos_h32/root

扩展完成。

因为安装CentOS用的xfs分区,所以使用命令xfs_growfs扩展文件系统大小。否则的话使用resize2fs命令。 查看结果:

# df -Th

/root已经扩充到33GiB:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏性能与架构

Mysql 高可用 InnoDB Cluster 多节点搭建过程

1. 简介 InnoDB Cluster 的搭建可以分为两种情况: (1)实验环境 使用 sandbox 沙箱模拟数据库实例,这个非常简单,可以参考之前的一篇文...

58060
来自专栏电光石火

在Win7的IIS上搭建FTP服务及用户授权

FTP服务      FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Intern...

53090
来自专栏Jerry的SAP技术分享

如何在SAP云平台的Cloud Foundry环境下添加新的Service(服务)

我想在SAP云平台的Cloud Foundry环境下使用MongoDB的服务,但是我在Service Marketplace上找不到这个服务。

36050
来自专栏PHP技术大全

使用Docker快速部署ELK分析Nginx日志实践

笔者所在项目组的项目由多个子项目所组成,每一个子项目都存在一定的日志,有时候想排查一些问题,需要到各个地方去查看,极为不方便,此前听说有ELK这种神器,搜索了一...

30930
来自专栏运维技术迷

连仕彤博客利用rsync+sersync实现数据实时同步

33940
来自专栏电光石火

在Win7的IIS上搭建FTP服务及用户授权

FTP服务      FTP是文件传输协议(File Transfer Protocol)的简称,该协议属于应用层协议(端口号通常为21),用于Internet...

47060
来自专栏吴柯的运维笔记

memcached数据库环境部署及应用

前言: 三大传统数据库:mysql,sqlserver,oracle 【sql数据库-存硬盘-慢】 新兴数据库:mogodb,memcached,redis ...

28250
来自专栏魏艾斯博客www.vpsss.net

lnmp 环境如何还原网站文件和数据库

14880
来自专栏北京马哥教育

40张步骤截图教你用腾讯云服务器配置LNMP环境并安装wordpress

? 作者:liuxinig 来源: http://www.cnblogs.com/liuxinig/p/5928361.html 本文有点长,原因是每一步都有...

1.2K80
来自专栏Petrichor的专栏

ubuntu: 控制&查看 进程

你也可以使用grep来对输出做管道,这样可以不需要使用其它命令就能搜索出某个进程。

42540

扫码关注云+社区

领取腾讯云代金券