docker清理占用空间(docker磁盘空间不足)
我们的DevOps平台目前发布了V 2.4.0版,用户已经超过了200人,随着用户的增多和托管项目的增多,原来运行DevOps平台的虚拟机也经常报空间不足,虽然主环境已经开始迁移Kubernets环境,但原来的环境因为部分用户的使用要求老的环境仍然在使用。下面记录了在遇到Docker空间不足时经常采用的办法。
导入docker镜像时,错误提示:磁盘空间不足。
1.查看docker镜像存放目录空间大小
du -hs /var/lib/docker/
2.停止docker服务。
systemctl stop docker
3.查看磁盘容量大的空间,且在上面创建新的docker目录。
df -h mkdir -p /data/docker/lib
4.迁移/var/lib/docker目录下的文件到新创建的目录/data/docker/lib
rsync -avz /var/lib/docker /data/docker/lib/
5.编辑 /etc/docker/daemon.json 添加如下参数
{ "graph": "/data/docker/lib/docker" }
6.重新加载docker,并重启docker服务。
systemctl daemon-reload && systemctl restart docker
7.检查docker是否变更为新目录/data/docker/lib/docker
[root@localhost ~]# docker info ... Docker Root Dir: /data/docker/lib/docker Debug Mode (client): false Debug Mode (server): false Registry: https://index.docker.io/v1/ ...
8.删掉docker旧目录
rm -rf /var/lib/docker
常见docker清理方法
docker system df 类似于Linux上的df命令,用于查看Docker的磁盘使用情况:
docker system prune 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像)。
docker system prune -a 清理得更加彻底,可以将没有容器使用Docker镜像都删掉。注意,这两个命令会把你暂时关闭的容器,以及暂时没有用到的Docker镜像都删掉了…所以使用之前一定要想清楚.。我没用过,因为会清理 没有开启的 Docker
赞 (0)