Linux下正确修改Docker镜像和容器的默认存储位置,亲测有效

我们通过 yum 的方式安装完Docker环境后,它默认的存储位置是 /var/lib/docker,默认的 pid 存放位置是 /var/run/docker.pid。

如果仅仅是做测试,我们可能没有必要修改,但是当大量使用docker镜像的时候,我们可能就要默认存储的位置了。

具体操作方法如下:

1、停止docker:

service docker stop

2、修改docker服务的service文件:

vim /usr/lib/systemd/system/docker.service

3、找到 ExecStart=/usr/bin/dockerd 部分所在的行,大约在第14行,行尾增加参数,结果为:

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --data-root=/data/docker  --pidflie=/data/docker/docker.pid
说明:--pidfile 参数,用来修改docker的pid文件默认存放位置,自行安排

4、保存service文件,移动原先的存储目录,重新启动docker服务:

systemctl daemon-reload  # 重新载入系统服务,必须执行!
mkdir -p /data
mv /var/lib/docker /data
service docker start

5、查看一下docer的当前运行信息:

docker info | grep "Docker Root Dir"

可以看到,docker的存储位置已经修改成功了。

PS:还有一种更省事的变更方式,就是先停止docker服务,再移动旧目录,然后新建一个软链接,不过,这没什么含量,不想像我这样折腾的,可以试一下:

systemctl stop docker
mv /var/lib/docker /data
ls -s /data/docker /var/lib/docker
service docker start

有需要的朋友拿走不谢~

转自 白天的影子

 

原文地址:https://www.cnblogs.com/gaogaoxingxing/p/15480797.html