Docker Volumes 还原指南

要将备份压缩包还原并重新导入到Docker中,请按以下步骤操作:

1. 停止正在运行的容器

复制代码
docker-compose -f docker-compose.yml down

2. 提取备份文件

找到要还原的备份文件(位于./backups目录,格式为ragflow-backup-YYYY-MM-DDTHH-MM-SS.tar.gz),并解压:

复制代码
mkdir -p restore_temp
tar -xzf ./backups/ragflow-backup-YYYY-MM-DDTHH-MM-SS.tar.gz -C restore_temp

3. 删除旧的数据卷(可选,谨慎操作)

如果需要完全替换现有数据:

复制代码
docker volume rm ragflow_esdata01 ragflow_mysql_data ragflow_minio_data ragflow_redis_data

4. 重新创建数据卷

复制代码
docker volume create ragflow_esdata01
docker volume create ragflow_mysql_data
docker volume create ragflow_minio_data
docker volume create ragflow_redis_data

5. 使用临时容器还原数据

复制代码
# 还原Elasticsearch数据
docker run --rm -v ragflow_esdata01:/data -v $(pwd)/restore_temp/backup/elasticsearch:/backup alpine sh -c "rm -rf /data/* && cp -a /backup/. /data/"

# 还原MySQL数据
docker run --rm -v ragflow_mysql_data:/data -v $(pwd)/restore_temp/backup/mysql:/backup alpine sh -c "rm -rf /data/* && cp -a /backup/. /data/"

# 还原Minio数据
docker run --rm -v ragflow_minio_data:/data -v $(pwd)/restore_temp/backup/minio:/backup alpine sh -c "rm -rf /data/* && cp -a /backup/. /data/"

# 还原Redis数据
docker run --rm -v ragflow_redis_data:/data -v $(pwd)/restore_temp/backup/redis:/backup alpine sh -c "rm -rf /data/* && cp -a /backup/. /data/"

6. 清理临时文件

复制代码
rm -rf restore_temp

7. 重新启动服务

复制代码
docker-compose -f docker-compose.yml up -d

注意:请确保还原操作在数据卷路径正确且服务停止的情况下进行,以避免数据冲突或损坏。

相关推荐
fiveym14 小时前
解析Debian 10安装Intel Xeon Silver 4510卡住问题及Debian 11/12支持改进
运维·debian
开利网络14 小时前
从“流量”到“留量”:长效用户运营的底层逻辑
大数据·运维·人工智能·自动化·云计算
嘻哈baby14 小时前
管理100台服务器是什么体验?Python一行代码搞定
运维
十六年开源服务商14 小时前
怎样做好WordPress网站数据分析与运维服务
运维·数据挖掘·数据分析
莫白媛14 小时前
浅谈Linux部分语法(从基础操作到自动化编程的三个层次)
linux·运维·自动化
tianyuanwo14 小时前
Linux密码管理深度解析:passwd与chpasswd的底层机制对比
linux·运维·passwd·chpasswd
学习3人组14 小时前
CentOS9安装Docker
docker·容器·eureka
violet-lz14 小时前
【Linux】VMware虚拟机中的Ubuntu操作系统主文件夹扩容
linux·运维·ubuntu
HunterMichaelG14 小时前
【openSSH】Linux openEuler-22.03-x86_64升级openSSH至10.2p1版本
linux·运维·服务器
VekiSon14 小时前
Linux系统编程——IPC进程间通信
linux·运维·网络