由于服务器到期等因素,需要对 GitLab 进行迁移,在此记下一段历程。
首先要保证迁入和迁出 GitLab 的版本是一致的,使用这一条指令:
CodeBlock Loading...
我的两个服务器输出分别是:
CodeBlock Loading...
升级 GitLab
因此需要对服务器进行升级。
我采用的安装方法是 Omnibus, 采用官网推荐的方式进行升级:
CodeBlock Loading...
其他升级方式可以来这里看:Updating GitLab installed with the Omnibus GitLab package
打备份包
我采用的安装方法是 Omnibus, 采用官网推荐的方式进行打包:Creating a backup of the GitLab system
CodeBlock Loading...
完成后就已经对 GitLab 整个系统备份到 /var/opt/gitlab/backups,根据官网除了打包还需要备份以下两个文件:
/etc/gitlab/gitlab-secrets.json/etc/gitlab/gitlab.rb
因此将这个两个文件也拷入 backups 文件夹,以便后面打包迁移:
CodeBlock Loading...
完成后看一下 /var/opt/gitlab/backups 文件夹中就是我们需要迁移走的所有文件啦
CodeBlock Loading...
对它进行打包:
CodeBlock Loading...
安装 阿里云 ossutils 工具
在这里使用阿里云 oss 做中转,你也可使用其他方式将压缩包传入待转入服务器。
首先安装:
CodeBlock Loading...
使用命令查看 endpoint,
CodeBlock Loading...
上传
CodeBlock Loading...
接下来来到待迁入服务器,同样执行 安装 之后进行下载:
CodeBlock Loading...
在这类迁入服务器是阿里云服务器,因此下载速度很快。
还原备份
首先将下载好的文件夹解压:
CodeBlock Loading...
压缩时保留了原有目录结构。
将备份文件拷入迁入服务器的 /var/opt/gitlab/backups/ 文件夹:
CodeBlock Loading...
下面停止 GitLab 中于数据库交换数据的 服务:
CodeBlock Loading...
恢复备份:
CodeBlock Loading...
将之前备份的另外两个文件迁入:
CodeBlock Loading...
重启 GitLab
CodeBlock Loading...
完成!