将docker数据目录迁移到 home目录下

将 Docker 数据目录从默认位置(通常是 /var/lib/docker)迁移到 /home 目录下,可以通过几个步骤来完成。以下是详细的迁移步骤:

步骤 1:停止 Docker 服务

在进行任何操作之前,确保先停止 Docker 服务以避免数据损坏。

Shell 复制代码
sudo systemctl stop docker

步骤 2:复制现有 Docker 数据到新位置

创建一个新的目录用于存放 Docker 数据,并使用 rsync 命令将现有的 Docker 数据复制到新的位置。rsync 可以确保文件属性和权限正确复制。

Shell 复制代码
sudo mkdir -p /home/docker-data
sudo rsync -aq /var/lib/docker/ /home/docker-data/

步骤 3:备份原 Docker 目录(可选但推荐)

为了安全起见,在做任何更改之前备份原有的 Docker 数据目录是个好主意。

Shell 复制代码
sudo mv /var/lib/docker /var/lib/docker.bak

步骤 4:创建符号链接

删除原来的 /var/lib/docker 目录并创建一个指向新位置的符号链接。

Shell 复制代码
sudo rm -rf /var/lib/docker
sudo ln -s /home/docker-data /var/lib/docker

步骤 5:启动 Docker 服务并验证

重新启动 Docker 服务,并检查是否一切正常工作。

Shell 复制代码
sudo systemctl start docker

验证 Docker 是否正确使用了新的数据目录:

Shell 复制代码
docker info | grep "Docker Root Dir"

你应该能看到输出类似于 Docker Root Dir: /home/docker-data,这表明 Docker 已经开始使用新的数据目录。

步骤 6:清理旧数据(如果确认迁移成功)

一旦确认所有东西都在新位置正常工作后,可以删除备份的旧 Docker 数据目录以释放空间。

Shell 复制代码
sudo rm -rf /var/lib/docker.bak

注意事项

在执行上述步骤时,请确保有足够的磁盘空间来进行复制操作。

如果您的系统配置或 Docker 安装方式不同,可能需要调整某些步骤。

在生产环境中执行此类操作前,请务必做好充分测试和备份准备。

通过这些步骤,您可以成功地将 Docker 的数据目录迁移到 /home 目录下,从而解决根分区空间不足的问题。

相关推荐
生活爱好者!12 小时前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
java_logo12 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
MC皮蛋侠客13 小时前
uv 系列(七):CI/CD、Docker 与私有索引——生产级交付
python·ci/cd·docker·uv
用户2333768521815 小时前
Docker 端口"时通时不通"的排查实战
docker
做个文艺程序员16 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
ShiXZ21316 小时前
Redis docker-compose 部署指南
redis·docker·eureka
梦梦代码精18 小时前
基于ThinkPHP6 + Vue3的家政预约系统全解析:从LBS定位到自动派单的完整实现
java·docker·开源·php·代码规范
小的博客18 小时前
windows下安装Docker Desptop
运维·docker·容器
李迟19 小时前
我的docker随笔48:Docker版本号演进史
docker
阿拉雷️20 小时前
部署实战】Docker + AI Agent:让AI一键部署Spring Boot到服务器,从打包到上线只要一条指令
人工智能·spring boot·docker