Docker 镜像存储目录的位置修改教程

以下是在 Linux 系统中修改 Docker 镜像存储目录位置的一般步骤:

  1. 查看当前 Docker 的默认存储目录:使用docker info命令可以查看 Docker 存储驱动程序和默认存储位置,其中docker root dir对应的就是默认存储目录。

  2. 停止 Docker 服务:使用sudo systemctl stop docker.service命令停止 Docker 服务。

  3. 进行目录迁移:

    • 创建新的 Docker 目录,选择一个空间较大的磁盘位置。例如,可以在/mnt目录下创建/mnt/docker目录,使用命令sudo mkdir -p /mnt/docker
    • 将原来/var/lib/docker目录下的文件迁移到新目录。使用命令sudo cp -r /var/lib/docker/* /mnt/docker/
  4. 修改配置文件:

    • 编辑/etc/docker/daemon.json文件(如果该文件不存在,则新建一个),添加如下内容:
    json 复制代码
    {
      "data-root": "/mnt/docker"
    }

    上述示例中,/mnt/docker是新的存储目录路径,你可以根据实际情况进行修改。如果涉及默认源的设定,且已设定了国内源,那么可在源地址下方添加一行,类似如下形式:

    json 复制代码
    {
      "registry-mirrors": ("http://hub-mirror.c.163.com"),
      "data-root": "/mnt/docker"
    }
    • 此外,还需编辑 Docker 配置文件。在/etc/systemd/system/multi-user.target.wants/docker.service中,将execstart=/usr/bin/dockerd -h fd:// --containerd=/run/containerd/containerd.sock修改为execstart=/usr/bin/dockerd --graph=/mnt/docker --storage-driver=overlay
  5. 保存退出后,重启 Docker 服务:依次执行sudo systemctl daemon-reloadsudo systemctl restart dockersudo systemctl status docker命令。

  6. 检查 Docker 存储路径是否配置成功:再次使用docker info命令查看,如果显示的 Docker 根目录为新设置的目录,则表示修改成功。

  7. 确认之前的镜像是否还在:使用docker ps -adocker images命令检查。

  8. 在确定容器和镜像没问题后,可以删除原来/var/lib/docker/目录中的文件,使用命令rm -rf /var/lib/docker/*

不同的 Linux 发行版和 Docker 版本可能会有一些细微差别,上述步骤可能需要根据实际情况进行调整。另外,在修改 Docker 存储目录位置时,务必谨慎操作,确保数据的安全和完整性。

对于 Windows 系统,Docker Desktop 的镜像存储位置修改方法可能会有所不同。例如在 Windows 10 中通过 WSL2 修改的一种方式是:首先关闭 Docker 桌面并退出 Docker 桌面,然后打开命令提示符,使用wsl --list -v命令确保相关状态已停止。接着,按照一定步骤进行导出、注销、导入等操作来修改镜像文件的存储位置。

如果你使用的是其他操作系统或 Docker 环境,请参考相应的文档或社区资源来获取适合的修改方法。同时,建议在进行任何重要的系统配置更改之前,先备份重要的数据,以防万一出现问题可以进行恢复。

相关推荐
勇哥的编程江湖4 小时前
starrocks官网docker部署mysql无法连接
运维·docker·容器
小码过河.7 小时前
CentOS 搭建 Docker 私有镜像仓库
linux·docker·centos
飞询10 小时前
部署 coze-loop
docker·coze
龙卷风040510 小时前
使用本地IDEA连接服务器远程构建部署Docker服务
后端·docker
longxibo16 小时前
飞牛系统安装DataEase自定义Docker包
运维·docker·容器
Reggie_L16 小时前
Eureka-服务注册,服务发现
云原生·eureka·服务发现
先生沉默先16 小时前
Docker常用命令详解:以Nginx为例
nginx·docker
水瓶_bxt17 小时前
创建 GitLab Runner 使用CICD自动化部署容器
eureka·自动化·gitlab
胡耀超18 小时前
基于Docker的GPU版本飞桨PaddleOCR部署深度指南(国内镜像)2025年7月底测试好用:从理论到实践的完整技术方案
运维·python·docker·容器·ocr·paddlepaddle·gpu
YXWik621 小时前
Linux(centos7)安装 docker + ollama+ deepseek-r1:7b + Open WebUI(内含一键安装脚本)
linux·docker·ai