0

Gitea 迁移(环境:Docker + MySQL)

发表于:2024-10-19 19:53:42 Docker 201

<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容器

收藏
送赞
分享

发表回复