迁移变更Docker默认数据存储目录

场景说明

Docker安装的默认数据目录为/var/lib/docker,但是如果/目录挂载的磁盘空间不够,就需要迁移docker数据到其他目录。

查找大空间磁盘目录

shell 复制代码
# 首先查看一下各目录磁盘空间大小,便于设置docker数据目录路径
[root@two harbor-2.9.1]# df -h
Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                  19G     0   19G   0% /dev
tmpfs                     19G     0   19G   0% /dev/shm
tmpfs                     19G   33M   19G   1% /run
tmpfs                     19G     0   19G   0% /sys/fs/cgroup
/dev/mapper/centos-root   50G   12G   39G  23% /
/dev/sda1               1014M  196M  819M  20% /boot
/dev/mapper/centos-home  2.6T  2.7G  2.6T   1% /home
tmpfs                    3.8G     0  3.8G   0% /run/user/1000

这里/home目录最大,我们选择将docker数据存储目录设置到/home下

停止docker服务

shell 复制代码
systemctl stop docker.socket
systemctl stop docker.service

创建docker新数据存储目录

shell 复制代码
mkdir -p /home/docker/data

安装rsync工具

复制代码
yum install rsync -y

迁移docker历史数据

javascript 复制代码
rsync -avzP /var/lib/docker /home/docker/data

修改docker配置文件

shell 复制代码
# 配置 docker 镜像代理及数据存储目录
[root@two docker24.0.4-offline-install]# mkdir -p /etc/docker
[root@two docker24.0.4-offline-install]# vim /etc/docker/daemon.json

{
    ......
    "data-root": "/home/docker/data",
    ......
}

data-root 启动报错的话,使用老版本参数graph代替

启动docker服务

shell 复制代码
systemctl daemon-reload
systemctl start docker

aemon-reload systemctl restart docker

复制代码
确定Docker服务正确,删除原数据目录

docker ps -a

rm -rf /var/lib/docker

复制代码
相关推荐
大鸡腿同学4 小时前
手心向上,手心向下
后端
CCblandy4 小时前
令牌桶在 0.9 倍负载超发 19%、固定窗口边界放行 20 个:四种限流算法同构实测
后端·python·算法·性能优化·架构
凤山老林6 小时前
Spring Boot 集成 Sa-Token 实现高可用权限认证:登录鉴权、动态路由权限与接口防重放实战
spring boot·后端·sa-token·bootstrap
Bazingga7 小时前
一次推理的完整旅程:ReAct推理深度解析
后端
姜鱼问生8 小时前
Nginx gzip 压缩:一个配置让页面加载快 3 倍
后端·算法·架构
颜酱8 小时前
一栋商业大厦,讲清 InnoDB 的表空间、段、区和页
后端·mysql
码事漫谈8 小时前
1956 亿行数据该怎么存:金仓时序数据库的三个实测
后端
Wx-bishekaifayuan8 小时前
springboot桂味美食分享系统40540-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
彭亚川Allen8 小时前
从零手搓 RAG 之检索全流程,给大模型接上自己的知识库
前端·后端·ai编程
IT_陈寒8 小时前
别让Java字符串拼接偷偷吃掉你的内存
前端·人工智能·后端