教你一招:如何修改Docker的默认数据存储路径

Docker的默认数据路径/var/lib/docker是Docker镜像、容器、卷和网络等所有运行时数据的存储地。当需要修改这个默认路径时,有多种方法可供选择。下面将介绍两种常见的方法:

方法一:通过修改Docker的系统服务文件(systemd)

如果你的系统是基于systemd的(例如大多数现代Linux发行版),那么你可以通过编辑Docker的系统服务文件来更改数据目录。
1.停止Docker服务

sudo systemctl stop docker

2.备份原始的Docker数据
为了防止意外情况发生,建议在进行任何修改之前备份原始数据。

sudo cp -au /var/lib/docker /var/lib/docker.bak

3.移动Docker数据到新的位置
假设你想把数据移动到/data/path/docker目录:

sudo mkdir -p /data/path/docker
sudo rsync -axSHAX /var/lib/docker/ /data/path/docker/

4.编辑Docker的系统服务文件
编辑/etc/systemd/system/docker.service.d/override.conf文件(如果不存在则创建它),并添加或修改以下内容:

[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --data-root=/data/path/docker -H fd:// --containerd=/run/containerd/containerd.sock

上述配置将Docker的数据根目录更改为/data/path/docker。
5.重新加载systemd配置并启动Docker

sudo systemctl daemon-reload   
sudo systemctl start docker

6.验证更改
运行docker info命令,检查Docker Root Dir是否指向了新的路径。

方法二:使用Docker守护进程的命令行参数

如果你不是通过systemd管理Docker,或者只是想临时更改数据目录(例如,在Docker命令行中),你可以通过命令行参数–data-root来指定数据目录:

dockerd --data-root=/data/path/docker

请注意,这种方法是临时的,并且在Docker守护进程重启后将失效。如果你想要永久更改数据目录,应该使用systemd或其他初始化系统的方法,如上述方法一所示。

在修改Docker默认数据路径时,请确保新路径的磁盘空间足够,并考虑到权限和安全性问题。此外,修改后可能需要重新配置Docker网络和其他相关设置,以确保系统的正常运行。

原创文章,作者:运维侠,如若转载,请注明出处:https://www.yunweixia.com/knowledgebase/how-to-change-docker-default-storage-path.html

(0)
运维侠的头像运维侠共建用户
上一篇 2025年5月14日 18:11
下一篇 2025年5月16日 18:11

相关推荐

发表回复

登录后才能评论