如何更改docker的默认存储位置和路径

如果在安装系统时选择了自动分区,根分区一般不会分太大,CentOS会默认分50G,麒麟v4大概是100G。

如需调整目录,请在安装时设置。

图片[1]-如何更改docker的默认存储位置和路径-不念博客

修改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服务来使更改生效。

但是需要注意以下几点:

  1. 在移动/var/lib/docker目录之前,务必备份重要的数据和镜像,以防数据丢失。
  2. 在修改daemon.json文件之前,您需要了解该文件的正确格式和内容。如果不确定如何编写,可以参考Docker官方文档或使用现有的示例文件进行修改。
  3. 修改完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官方文档以获取更多指导。

© 版权声明
THE END