Linux下正确修改Docker镜像和容器的默认存储位置,亲测有效
程序员文章站
2023-11-14 13:36:58
我们通过 yum 的方式安装完Docker环境后,它默认的存储位置是 /var/lib/docker,默认的 pid 存放位置是 /var/run/docker.pid。
如果仅仅是做测试,我们可能没有必要修改,但是当大量使用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
有需要的朋友拿走不谢~