解决Docker容器存放目录空间不足的问题
前言
    docker所在服务器,运行了一段时间后,发现服务器磁盘目录快不够用了。通过du -h --max-depth=1 / 逐级目录排查,发现/var/lib/docker目录文件过大。通过以下方法,解决该问题。
转移数据修改docker默认存储位置
有多种方式修改docker默认存储位置。
最好是在docker安装完后,第一时间修改docker默认存储位置为其他大目录或者磁盘中。规避迁移数据过程中造成的风险。
停止docker服务
1  | systemctl stop docker  | 
创建新的docker目录
执行命令df -h,找一个大的磁盘
找到后(我这里找到的是/home)在 /home目录下面建了/home/modules/docker/lib目录
1  | mkdir -p /home/modules/docker/lib  | 
迁移
将/var/lib/docker目录下面的文件到/home/modules/docker/lib
迁移后的完成docker路径:/home/modules/docker/lib/docker
1  | rsync -avz /var/lib/docker/ /home/modules/docker/lib/  | 
配置
修改/etc/systemd/system/docker.service.d/devicemapper.conf
查看/etc/systemd/system/docker.service.d目录及devicemapper.conf是否存在。如果不存在,就新建
1  | mkdir -p /etc/systemd/system/docker.service.d/  | 
devicemapper.conf添加如下内容:
1  | [Service]  | 
重启docker
1  | systemctl daemon-reload  | 
确认Docker Root Dir修改是否已经生效
1  | docker info  | 
启动成功后,再确认之前的镜像是否还在
1  | docker images  | 
确定容器没问题后删除/var/lib/docker/目录中的文件
1  | rm -rf /var/lib/docker  | 
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 YD Blog!