linux的磁盘空间挂载后,需要迁移一下docker 镜像原本的位置,因此有此实践,分享操作过程
docker磁盘空间不足解决办法
导入docker镜像时,错误提示:磁盘空间不足。
1.查看docker镜像存放目录空间大小
bash
du -hs /var/lib/docker/
2.停止docker服务。
bash
systemctl stop docker
3.查看磁盘容量大的空间,且在上面创建新的docker目录。
bash
df -h
mkdir -p /data/docker/lib
4.迁移/var/lib/docker目录下的文件到新创建的目录/data/docker/lib
bash
rsync -avz /var/lib/docker /data/docker/lib/
5.编辑 /etc/docker/daemon.json 添加如下参数 在docker 19.xx 版本以后使用data-root
来代替graph
注意:配置的路径比创建路径多个docker,踩坑小达人亲历
bash
{
"data-root": "/data/docker/lib/docker"
}
6.重新加载docker,并重启docker服务。
bash
systemctl daemon-reload && systemctl restart docker
7.检查docker是否变更为新目录/data/docker/lib/docker
bash
[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旧目录
bash
rm -rf /var/lib/docker
常见docker清理方法
docker system df 类似于Linux上的df命令,用于查看Docker的磁盘使用情况:
docker system prune 可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像)。
docker 启动所有镜像
docker 服务重启了,但是里面有很多镜像,想要全部启动,一个个start太慢了。一键启动命令:
bash
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2)