[i=s] 本帖最后由 乘与零-cenyuio 于 2024-12-13 22:20 编辑 [/i]<br />
<br /> 
一、备份 Gitea
进入 gitea终端。 
docker exec -it gitea /bin/bash 
运行以下命令。 
su git #却换git账号
cd /tmp #进入备份保存的目录
gitea dump #备份到当前目录
ls -l #查看是否备份成功 
示例 
  
二、将备份文件上传到另一台主机
将 gitea-dump-<时间戳>.zip 上传到另一台 gitea主机上。 
将 gitea-db.sql(解压gitea备份文件后获取)上传到另一台 MySQL主机上。 
  
  
三、恢复MySQL备份
如果连接同一数据库服务,可以省略这一步骤。 
 
进入 MySQL终端连接数据库,创建 gitea数据库。 
mysql -**oot -p
create database gitea;
quit; 
恢复备份。 
mysql --default-character-set=utf8mb4 -**oot -p gitea < /mnt/gitea-db.sql 
示例 
  
四、恢复Gitea备份
进入 gitea终端,解压备份文件,替换gitea。 
unzip gitea-dump-1729334813.zip #解压备份文件
cp -r data/* /data/gitea #替换配置文件
mkdir -p /data/git/repositories #创建仓库文件夹
cp -r repos/* /data/git/repositories #恢复仓库本身
chown -R git:git /data  # 调整文件权限
vi /data/gitea/conf/app.ini  # 修改新数据库连接方式(如果连接同一台MySQL服务,可以忽略这一步)
su git # 切换账号
/usr/local/bin/gitea -c '/data/gitea/conf/app.ini' admin regenerate hooks # 重新生成 Git 钩子 
六、重启Gitea容器
  
 
  |