背景
docker镜像默认存放在根目录下,而有时候根目录往往比较小或者有时候需要重装系统,将docker镜像放在根目录下有被删除或者根目录被撑爆的风险,因此需要将docker镜像默认存储位置更改为其他数据盘的位置。
解决办法
目录迁移
创建新的docker目录,执行命令df -h,找一个大的磁盘。 我在/data目录下面建了 /data/docker目录,执行的命令是:
mkdir -p /data/docker
迁移/var/lib/docker目录下面的文件到 /data/docker
cp -r /var/lib/docker/* /data/docker/
修改/etc/docker/daemon.json文件
在终端执行以下命令:
vim /etc/docker/daemon.json
然后添加以下内容:
{ "data-root": "/data/docker" #将docker的默认存储位置在该目录下 }
重启docker
systemctl daemon-reload #加载配置 systemctl restart docker #重启docker systemctl status docker #查看状态
检测是否生效
docker info | grep "Docker Root Dir"
如果输出为 Docker Root Dir: /data/docker,则说明更改生效。
删除/var/lib/docker/目录中的文件
rm -rf /var/lib/docker/*