修改Docker的默认存储路径,一般用下面几种方法:
方法一:
修改/usr/lib/systemd/system/docker.service文件,注释掉#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
新增ExecStart=/usr/bin/dockerd --graph /opt/docker。
使用 systemctl restart docker 重启docker。
方法二:
创建软链接 ln-s /home/docker /var/lib。
systemctl restart docker 重启docker。
此外,也可以在安装Docker时更改默认存储路径。
Docker的默认存储路径通常是磁盘上的一个临时目录。在默认情况下,Docker容器的数据存储在/var/lib/docker目录下,但是这个路径可能会在系统磁盘空间不足时变得不可用。因此,为了确保数据的可靠性和可用性,有必要更改Docker的默认存储路径。要更改Docker的默认存储路径,可以按照以下步骤操作:
1. 在主机的根目录下创建一个新的目录来存储Docker数据。例如,可以在/docker目录下创建一个新目录。
mkdir /docker
2. 编辑配置文件/etc/docker/daemon.json添加 “data-root”: “/docker”
vim /etc/docker/daemon.json
在这个文件中,可以添加以下内容:
{
"registry-mirrors": ["https://registry.docker-cn.com"],
"data-root": "/home/docker",
"log-driver":"json-file",
"log-opts": {"max-size":"100m"}
}
这会将Docker容器的存储路径更改为/docker。
3. 保存并关闭配置文件。然后,重新启动Docker守护进程以应用更改。
这可以通过以下命令完成:
sudo systemctl restart docker
现在,Docker容器的数据应该存储在/docker目录下了。
按照上述方法修改了 /etc/docker/daemon.json这个文件之后 ,以前的docker 镜像其实会看不到,如何解决呢?
可以把之前/var/lib/docker目录下的内容移动至新路径,然后通过修改daemon.json文件并重启Docker服务来使更改生效。
但是需要注意以下几点:
- 在移动/var/lib/docker目录之前,务必备份重要的数据和镜像,以防数据丢失。
- 在修改daemon.json文件之前,您需要了解该文件的正确格式和内容。如果不确定如何编写,可以参考Docker官方文档或使用现有的示例文件进行修改。
- 修改完daemon.json文件后,需要重新启动Docker服务以使更改生效。可以使用适当的命令来重新启动Docker服务,具体取决于您的操作系统和发行版。例如,在大多数Linux系统上,可以使用sudo systemctl restart docker命令来重新启动Docker服务。
重点来了!创建软链接
除了以上方式,还有一种比较方便的方法,提供给大家。
创建软链接需要先把/var/lib下的docker目录删除,删除之前记得迁移数据。然后用下面命令创建软链接。这里建议是使用mv指令,将docker路径移动到目标地址,再创建软件链接
# 1.先停止服务
systemctl restart docker
# 2.移动文件
mv /var/lib/docker /docker
# 3.创建软链接
ln -s /docker /var/lib
# 4.重启docker
systemctl restart docker
微技术建议在进行任何更改之前,先备份重要的数据,并确保您对操作有足够的了解。如果您不确定如何进行操作,建议咨询专业的Docker管理员或参考Docker官方文档以获取更多指导。