解决docker磁盘空间不足

场景:

Linux的/var/lib/docker 占用9个G,当初创建虚拟机的时候给var只分配了10G容量后续空间不足

有三种解决方案
1.给虚拟机磁盘空间扩容并对var目录重新挂载(试过一次虚拟机崩了然后重装虚拟机)
2.给docker目录创建软连接到更大容量的目录
3.迁移docker目录文件至一个新目录

本文讲述第三种方式,对docker容器迁移扩容


具体描述:

虚拟机/home文件夹30G, /var文件夹10G, docker只有一个6.85G的oracle镜像和700m的容器,选择将/var/lib/docker 迁移至 /home/docker/lib 总耗时不到20分钟

解决方案:

提示:

#1.停止docker服务。
systemctl stop docker

#2.查看磁盘容量大的空间,且在上面创建新的docker目录。
df -h
mkdir -p /home/docker/lib

#3.迁移/var/lib/docker目录下的文件到新创建的目录/home/docker/lib
rsync -avz /var/lib/docker /home/docker/lib/

#4.编辑 /etc/docker/daemon.json 添加如下参数(注意别掉了json格式的逗号会导致后续重启docker容器报错)
{
  "graph": "/home/docker/lib/docker"
}

#5.重新加载docker,并重启docker服务。
systemctl daemon-reload && systemctl restart docker

#6.检查docker是否变更为新目录/home/docker/lib/docker
[root@localhost ~]# docker info
...
Docker Root Dir: /home/docker/lib/docker
...

#8.删掉docker旧目录
rm -rf /var/lib/docker

你可能感兴趣的:(docker,linux)