6

如何更改Docker的默认存储位置

 9 months ago
source link: https://www.51cto.com/article/776247.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

如何更改Docker的默认存储位置

作者:微技术 2023-12-11 22:17:56

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

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

f7f0982216589ed4343117f498b96a7a200464.jpg

修改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官方文档以获取更多指导。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK