当前位置: 首页 > news >正文

【教程】Docker更换存储位置

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]

如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~

目录

背景说明

更换教程

1. 停止 Docker 服务

2. 创建新的存储目录

3. 编辑 Docker 配置文件

4. 迁移已有数据到新位置

5. 启动 Docker 服务

6. 验证当前 Docker 存储位置

注意事项


背景说明

Docker 默认将所有数据存储在:

/var/lib/docker

现在希望更换位置,比如存到/mnt下面去。

更换教程

1. 停止 Docker 服务

sudo systemctl stop docker

2. 创建新的存储目录

sudo mkdir -p /mnt/vdb/docker

你也可以指定其他路径,比如 /mnt/disk/docker,只要该目录有足够空间并已挂载好。

3. 编辑 Docker 配置文件

Docker 的配置文件在:

sudo vim /etc/docker/daemon.json

如果没有这个文件,可以手动创建它。

修改或添加以下内容:

{ "data-root": "/mnt/vdb/docker" }

4. 迁移已有数据到新位置

如果你不想丢弃原来已有的镜像或容器数据,可以执行以下命令迁移:

sudo rsync -aP /var/lib/docker/ /mnt/vdb/docker/
  • 注意最后的 / 是为了复制目录 内部内容 而不是目录本身,所以记得加

  • -a:归档模式,保留权限、符号链接等

  • -P:显示进度,并支持断点续传

5. 启动 Docker 服务

sudo systemctl start docker

6. 验证当前 Docker 存储位置

执行:

sudo docker info | grep "Docker Root Dir"

应输出类似:

Docker Root Dir: /mnt/vdb/docker

注意事项

  • 如果你使用的是 Docker Desktop(Windows/Mac),请在图形界面中设置,不适用此方案。

  • 如果你使用的是 自定义安装路径或容器运行时(如 containerd),对应方式可能不同。

  • 推荐使用 rsync 而非 cp 进行迁移,因为它能保留符号链接、权限等信息。

相关文章:

  • 【机器学习】支持向量回归(SVR)从入门到实战:原理、实现与优化指南
  • Redis的热Key问题如何解决?
  • PostgREST:无需后端 快速构建RESTful API服务
  • 【MySQL】日志缓冲区详解 以及 InnoDB内存结构总结
  • TrimAl介绍
  • RPM 包制作备查 SRPM 包编译
  • 高并发内存池(四):Page Cache结构设计
  • 青少年编程与数学 02-019 Rust 编程基础 12课题、所有权系统
  • AI开发者的算力革命:GpuGeek平台全景实战指南(大模型训练/推理/微调全解析)
  • NLP的基本流程概述
  • 深度剖析 GpuGeek 实例:GpuGeek/Qwen3-32B 模型 API 调用实践与性能测试洞察
  • LeetCode 热题 100_颜色分类(98_75_中等_C++)(技巧)(计数;双指针)
  • Shell和Bash介绍
  • 学习threejs,使用Physijs物理引擎,通过控制重力,实现多米诺骨牌效果
  • Data Mining|缺省值补全实验
  • 【PmHub后端篇】PmHub集成 Sentinel+OpenFeign实现网关流量控制与服务降级
  • 【拥抱AI】Deer-Flow字节跳动开源的多智能体深度研究框架
  • More Effective C++:改善编程与设计(上)
  • java连数据库
  • AI-02a5a5.神经网络-与学习相关的技巧-权重初始值
  • 经济日报评外卖平台被约谈:行业竞争不能背离服务本质
  • GDP逼近五千亿,向海图强,对接京津,沧州剑指沿海经济强市
  • 美国明尼苏达州发生山火,过火面积超80平方公里
  • 梅花奖在上海丨陈丽俐“婺剧折戏专场”:文戏武做,武戏文唱
  • 中央结算公司:减免境外央行类机构账户开户费用
  • 世贸组织欢迎中美经贸高层会谈取得积极成果