CentOS7如何修改Docker镜像默认存储位置

 更新时间:2023年11月27日 08:35:56   作者:程行者  
这篇文章主要介绍了CentOS7如何修改Docker镜像默认存储位置问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

CentOS7修改Docker镜像默认存储位置

停止docker服务

# systemctl stop docker

修改docker服务启动文件

# vim /etc/sysconfig/docker

OPTIONS='--selinux-enabled --log-driver=journald --graph=/docker  --signature-verification=false --insecure-registry  192.168.1.1'
#--insecure-registry  192.168.1.1这是仓库地址可以忽略
# /docker这个目录就是我用于替代默认/var/lib/docker的目录,目录创建好之后记得“mv /var/lib/docker/* /docker/”,把所有原先目录下所有的文件和目录拷贝到新目录下。

重新加载配置并启动

# systemctl daemon-reload
# systemctl start docker

检查docker信息
# docker info

修改docker默认存储路径方法总结

默认情况下,docker镜像的默认存储路径是/var/lib/docker,这相当于直接挂载根目录下,然而如果在安装系统时选择了自动分区,根分区一般不会分太大,CentOS会默认分50G,麒麟v4大概是100G。

docker的默认路径:

修改docker的默认路径,有三种方法

先创建新的docker目录

mkdir /home/docker

centos在安装时如果选择默认分区,会把最大存储空间分给home,此处也可另外挂载一块磁盘,把新的docker目录建在新磁盘上面

如果已经有镜像已经加载,已经有容器正在运行,请先停了docker服务,并把数据迁移到新目录中

1.修改docker.service

vim /usr/lib/systemd/system/docker.service
 
#在里面的EXECStart的后面增加--graph /home/docker:
 
ExecStart=/usr/bin/dockerd  -H fd:// --containerd=/run/containerd/containerd.sock  --graph /home/docker

保存退出后执行以下命令

systemctl enable docker
systemctl daemon-reload
systemctl restart docker

2.编辑配置文件/etc/docker/daemon.json

添加 "data-root": "/home/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应用

systemctl restart docker

3.使用软链接

使用软链接需要先把/var/lib下的docker目录删除,删除之前记得迁移数据。然后用下面命令创建软链接

ln -s /home/docker /var/lib
systemctl restart docker

重启docker

这就是修改docker默认路径之方法,可根据实际情况选用。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Docker Desktop Vmmem内存占用过高问题及完美解决方案

    Docker Desktop Vmmem内存占用过高问题及完美解决方案

    DockerDesktopVmmem内存占用过高问题常见于其基于WSL运行类似虚拟机的机制,通过编辑.wslconfig文件限制WSL资源,可有效降低内存占用,具体操作包括创建.wslconfig文件,调整内存配置,并重启Docker Desktop,需注意内存设置不宜过小,以免影响Docker运行和容器稳定性
    2024-09-09
  • Docker 解决容器时间与主机时间不一致的问题三种解决方案

    Docker 解决容器时间与主机时间不一致的问题三种解决方案

    这篇文章主要介绍了Docker 解决容器时间与主机时间不一致的问题的相关资料,这里提供了三种方法,供大家参考,需要的朋友可以参考下
    2016-12-12
  • 以示例讲解Clickhouse Docker集群部署以及配置

    以示例讲解Clickhouse Docker集群部署以及配置

    这篇文章主要介绍了Clickhouse Docker集群部署及配置,示例讲解的非常详细,希望可以帮助到有需要的小伙伴
    2021-08-08
  • 聊聊kubernetes1.20用containerd替换docker(shim)的问题

    聊聊kubernetes1.20用containerd替换docker(shim)的问题

    这篇文章主要介绍了kubernetes1.20用containerd替换docker(shim),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • Docker的镜像制作方法详解

    Docker的镜像制作方法详解

    这篇文章主要介绍了Docker的镜像制作方法的相关资料,文章讲解了Docker镜像的基本原理、结构和制作方式,镜像是创建Docker容器的基础,需要的朋友可以参考下
    2024-10-10
  • docker中使用mysql数据库详解(在局域网访问)

    docker中使用mysql数据库详解(在局域网访问)

    这篇文章主要给大家介绍了在docker中使用mysql数据库,在局域网访问的相关资料,文中通过图文以及示例代码介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-06-06
  • Docker网络模型以及容器通信详解续篇

    Docker网络模型以及容器通信详解续篇

    这篇文章主要介绍了Docker网络模型以及容器通信详解续篇的相关资料,通过学习Docker网路驱动模型,更好地解决容器间的通信问题,需要的朋友可以参考下
    2022-11-11
  • 如何在mac上用docker对Oracle进行部署使用

    如何在mac上用docker对Oracle进行部署使用

    这篇文章主要介绍了如何在mac上用docker对Oracle进行部署使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • 优化docker镜像体积的方法详解

    优化docker镜像体积的方法详解

    镜像的本质是镜像层和运行配置文件组成的压缩包,构建镜像是通过运行 Dockerfile 中的 RUN 、COPY 和 ADD 等指令生成镜像层和配置文件的过程,本文给大家介绍了如何优化 docker 镜像体积,需要的朋友可以参考下
    2025-03-03
  • 在Docker中构建并运行Nginx容器的完整教程

    在Docker中构建并运行Nginx容器的完整教程

    Docker 作为一种强大的容器化平台,使得开发、测试和部署变得更加高效和灵活,Nginx 是一款广泛使用的高性能 Web 服务器和反向代理服务器,适用于各种场景,在本教程中,我们将详细介绍如何在 Docker 中构建并运行一个 Nginx 容器,需要的朋友可以参考下
    2024-09-09

最新评论