以下是在 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文件(如果该文件不存在,则新建一个),添加如下内容:
    {
    "data-root": "/mnt/docker"
    }

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

    {
    "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-reload、sudo systemctl restart docker和sudo systemctl status docker命令。

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

  7. 确认之前的镜像是否还在:使用docker ps -a和docker 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 环境,请参考相应的文档或社区资源来获取适合的修改方法。同时,建议在进行任何重要的系统配置更改之前,先备份重要的数据,以防万一出现问题可以进行恢复。

Docker 镜像存储目录的位置修改教程的更多相关文章

  1. mui.toast样式风格及位置修改教程

    mui.toast样式风格及位置修改教程 使用了mui.toast来实现可自动消失的信息提示效果. 但默认的显示效果太差了,很不显示,而且是在底部的. 如下图: 想改到屏幕的中间位置,再改大一点. 但 ...

  2. Docker镜像的目录存储讲解

    我们成功安装完docker后,执行命令行sudo docker run hello-world, 如果是第一次执行,则会从远程拉取hello-world的镜像到本地,然后运行,显示hello worl ...

  3. Docker镜像存储-overlayfs

    一.概述 Docker中的镜像采用分层构建设计,每个层可以称之为“layer”,这些layer被存放在了/var/lib/docker/<storage-driver>/目录下,这里的st ...

  4. centos mysql 数据存储目录安装位置

    rpm -ql mysql查看安装位置 MYSQL默认的数据文件存储目录为/var/lib/mysql.假如要把目录移到/home/data下需要进行下面几步: 1.home目录下建立data目录 c ...

  5. 安装docker和更改docker镜像下载目录

    centos6.x系列: yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm yum inst ...

  6. windows10 docker镜像存储位置修改

    =====================================下面做法无效,无法成功启动docker=================================== 安装Docker ...

  7. Ubuntu 16.04系统上修改Docker镜像的存储路径 (转)

    转自:https://blog.csdn.net/qihongchao/article/details/80651492 dba专门挂了一个硬盘让我放项目(测试环境)因为系统空间比较小,希望把dock ...

  8. Docker - docker images存储位置,引出ls和du命令的不同

    docker镜像存储位置 docker info | grep "Docker Root Dir" 例如我的driver是overlay2,则docker镜像的实际存储在/var/ ...

  9. 深入分析 Docker 镜像原理

    摘要:近日, DaoCloud 软件工程师孙宏亮在 CSDN Container 微信群为大家带来了 Docker 镜像原理的深度分享,本次分享的重点是 Docker 镜像,分享的内容主要包含两个部分 ...

  10. docker镜像、容器

    第一部分:Docker镜像的基本知识 1.1 什么是Docker镜像 从整体的角度来讲,一个完整的Docker镜像可以支撑一个Docker容器的运行,在 Docker容器运行过程中主要提供文件系统视角 ...

随机推荐

  1. VTK 显示3D模型的网格线(线框/wireframe)

    在VTK9.1.0在Windows10+VS2019+Qt 5.15.2环境下编译安装的Qt例子中,想显示球体表面的网格线(线框/wireframe),设置actor的EdgeVisibilityOn ...

  2. uniapp 坑 - sslVerify不支撑离线打包

    uniapp 打包为Android的apk时,由于适用https和自签证书,离线打包不支撑sslVerify,导致出现Trust anchor for certification path not f ...

  3. 【分块】LibreOJ 6278 数列分块入门2

    题目 https://loj.ac/p/6278 题解 将 \(n\) 个元素的数组 \(a\) 按块长 \(\sqrt{n}\) 进行分块处理.为每个块设置一个懒添加标记 \(add[i]\),代表 ...

  4. 04C++顺序结构(3)

    一.设置域宽setw() 教学视频1 输出的内容所占的总宽度成为域宽,有些高级语言中称为场宽.使用setw()前,必须包含头文件iomanip,即#include.头文件iomanip,用来声明一些& ...

  5. Dapr-3: 从 20000 英尺之上俯瞰 Dapr

    第 3 章 从 20000 英尺之上俯瞰 Dapr Dapr at 20,000 feet | Microsoft Docs 在第 1 章中,我们讨论了分布式微服务应用的吸引力.但是,我们也指出了它会 ...

  6. 金Gien乐道 | 10月热点回顾

    ​ 收获之秋,中电金信Q4开篇捷报不断 ​ Q4开篇,中电金信迎来多个捷报.公司与青岛财通集团联合打造的核心业务系统(一体化业务平台)一期项目顺利投产上线并平稳运行:中标华南某全国性股份制商业银行新一 ...

  7. 【Mybatis-Plus进阶学习(八)】SQL注入器

    使用SQL注入器就可以自定义例如selectById的默认方法. 实现步骤Step1:创建定义方法的类:Step2:创建注入器:Step3:在Mapper中加入自定义方法. 自定义注入器的简单使用 第 ...

  8. SprinfBoot报警告WARNING: An illegal reflective access operation has occurred

    警告如图所示,该警告是因为jdk版本太高(我用的是10.0,据说9.0的也会这样),具体的原理还没有研究,它不影响项目的正常运行,但是看着很糟心有木有~~~~ 解决方案是把项目jdk降低到1.8及以下 ...

  9. Qt编写地图综合应用40-覆盖物弧线

    一.前言 弧线可以用来指示某几个点直接弧形的方式绘制线条,尤其是飞机轨迹,起点到终点弧形曲线展示,更美观.百度地图的折线图.矩形图.圆形图等,都统称覆盖物,都是作为覆盖物绘制上去的,这样的好处是速度很 ...

  10. Unity TheHeretic Gawain Demo 异教徒Demo技术学习

    <异教徒 Heretic>是Unity在2019年GDC大会上展示的一款技术Demo,部分资源于2020年中旬公开下载. 这款Demo主要用于展示Unity在数字人技术领域的最新进展,尤其 ...