美文网首页程序员Docker容器虚拟化&容器技术
docker 文件撑爆服务器根目录处理方案

docker 文件撑爆服务器根目录处理方案

作者: ChainZhang | 来源:发表于2018-08-30 15:46 被阅读34次

    本文为转载,原文:docker 文件撑爆服务器根目录处理方案

    docker

    1. 介绍

    默认的情况下,docker启动的容器经过日积月累,会产生很多的大文件,大到足以撑满服务器的磁盘空间。这个时候该怎么办呢?答案当然是扩容了。

    这里给一个常规的解决思路,给云服务器增加一块大磁盘,然后将docker的文件全部移到新挂载的磁盘里,再为docker创建一个软链接即可。

    2. 解决方案

    2.1 查看未挂载的磁盘

    示例中的磁盘并不是另外加的一块,而且之前就存在的磁盘,但是有一大部分空间未分配。但实际上这跟新加的磁盘处理方案是一样的,下面就以此为例做个简单介绍。

    查看磁盘情况

    fdisk -l
    
    image

    可以看到xvda磁盘有200G的空间,但是只挂载了50G左右的,剩下的都在空闲状态,现在需要将剩下的150G左右的空间给利用上

    2.2 挂载磁盘

    2.2.1 建分区

    执行以下命令,建立分区

    fdisk /dev/xvda
    

    按提示输入m可查看命令帮助

    image

    输入p 查看当前磁柱请情况

    image

    输入 n 新建分区,并按提示选择分区类型,及起始和结束扇区

    image

    然后输入 w 保存
    最后再用reboot重启服务器

    2.2.2 挂载磁盘

    重启服务器之后,为刚刚建立的分区格式化

    mkfs.ext3 /dev/xvda3  // 将分区格式化为ext3格式
    mkdir /data   // 创建data目录
    mount /dev  /xvda3 /data/   // 将分区挂载到data目录
    
    image

    可以用以下命令查看下挂载后的结果

    df -h
    
    image

    2.2.3 设置开机自动挂载

    编辑/etc/fstab文件,再最后面添加 
    /dev/sdc1(磁盘分区) /disk/disktwo(挂载目录) ext3(文件格式)defaults 0 0
    

    2.3 创建docker大文件软链接

    1. 关闭docker服务
    systemctl stop docker
    
    1. 在新挂载的data目录创建docker目录
    mkdir /data/docker
    
    1. 将docker相关文件移到/data/docker目录下
    mv /var/lib/docker/ /data/docker/
    
    1. 创建软链接
    ln -s /data/docker/docker /var/lib
    
    1. 启动docker服务
    systemctl start docker
    
    1. 查看结果
    cd /var/lib
    ls -l
    
    image

    最后效果

    df -h
    
    image

    之前这台服务器的根目录使用100%的磁盘,经过这个方法处理之后,降到45%了。

    转载请注明出处:docker 文件撑爆服务器根目录处理方案

    相关文章

      网友评论

        本文标题:docker 文件撑爆服务器根目录处理方案

        本文链接:https://www.haomeiwen.com/subject/xgqdwftx.html