将 Docker 数据目录移到其他位置
如果无法或不想释放空间,可以将 Docker 的数据目录迁移到具有更多可用空间的其他挂载点:
确定一个新的具有足够空闲空间的位置,例如 /mnt/new-docker-data。确保分区或卷使用与 Docker 兼容的文件系统(通常为 ext4、xfs 或 btrfs)。
停止 Docker 守护进程:
sudo systemctl stop docker
如果尚未创建新目录,请创建之:
sudo mkdir -p /home/new-docker-data
将现有的 Docker 数据复制到新位置
(可选,仅在您想保留现有数据时进行):
sudo apt install rsync
sudo rsync -aPHAX /var/lib/docker/ /home/new-docker-data
更新 Docker 守护进程配置以使用新的数据目录。
编辑 Docker 守护进程配置文件,通常位于 /etc/docker/daemon.json。如果文件不存在,则创建它并包含以下内容:
{
"registry-mirrors": \["http\://hub-mirror.c.163.com"],
"data-root/graph": "/home/new-docker-data/"
}
请将 /mnt/new-docker-data
替换为您想要的新路径。
保存更改并应用新配置:
sudo systemctl daemon-reload
再次启动 Docker 守护进程:
sudo systemctl start docker
检查 Docker 服务状态:
sudo systemctl status docker
检查docker存储路径是否配置成功
docker info
Docker Root Dir: /home/new-docker-data
确认之前的镜像
docker ps -a
docker images
确定容器、镜像没问题后删除/var/lib/docker/目录中的文件。
rm -rf /var/lib/docker/*
完成以上步骤后,Docker 将使用指定的新位置存储其数据,包括镜像、容器和引发原始错误的临时文件(如 GetImageBlob2675073186)。这样应该能解决在拉取或管理 Docker 镜像时出现的“磁盘空间不足”问题。