Gitlab16.4版本迁移(同版本迁移和跨版本迁移)

        Gitlab是软件开发使用的版本库工具,我们在使用的过程种或许会遇到迁移的问题。Gitlab迁移主要有Gitlab project export / import、Gitlab backup & restore、Gitlab import bare repostries、Git clone后pull & push、Congregate 工具(第四、五种方法没验证过)。前3种方法都受限与Gitlab版本的不同无法进行平滑的迁移工作。我主要使用了Gitlab backup & restore迁移方式。

一、Gitlab安装

        Centos7.6 、Gitlab16.4.1

        Gitlab官网地址:GitLab下载安装_GitLab最新中文官网免费版下载-极狐GitLab欢迎来到极狐gitlab中文官网下载页面。在这里,您可以轻松获取gitlab下载链接和gitlab安装指南。我们为您提供一站式gitlab下载和安装服务, Linux安装包已捆绑了运行极狐GitLab所需的所有服务与工具。您可以免费进行gitlab下载,然后按照我们的gitlab安装指南进行操作。如您想试用gitlab旗舰版功能,可以点击免费试用即可开始免费试用30天的极狐gitlab。访问我们的gitlab中文官网下载页面,体验极狐gitlab的强大功能,让gitlab下载和gitlab安装变得更加简单快捷。icon-default.png?t=N7T8https://about.gitlab.com/install/

        安装依赖:sudo yum install -y curl policycoreutils-python openssh-server perl

        官方的yum安装源为:curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash (修改gitlab-ee 为gitlab-ce 下载安装社区版本。)

        安装Gitlab sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ce

二、Gitlab迁移(同版本)Gitlab backup & restore方法。

        2.1、在旧的版本备份Gitlab

                 使用命令:gitlab-rake gitlab:backup:create

                 备份的文件默认会在/var/opt/gitlab/backups目录产生如:1701441326_2023_12_

                  01_16.4.1_gitlab_backup.tar的文件。此备份包含项目信息、数据,项目组,用户,不

                   包含gitlab.rb、gitlab-secrets.json的配置。

        2.2、拷贝备份好的数据到新服务器对应的目录(如果修改了备份文件存储的路径请留意)

                  scp 1701441326_2023_12_01_16.4.1_gitlab_backup.tar  root@主机IP:/var/opt/gitlab/backups

        2.3、恢复数据

                 使用命令:gitlab-rake gitlab:backup:restore BACKUP=1701441326_2023_12_01_16.4

                 .1

                  注:恢复过程中出现 ERROR: must be owner of extension btree_gist

                                                   ERROR: must be owner of extension btree_gist

                                                   ERROR: must be owner of extension pg_trgm

                           这个报错不影响数据恢复。我忽略了这个报错,网上也有很多处理方法。

        2.4、恢复账户密码(由于我两个版本的gitlab配置不一样不恢复gitlab.rb)

               gitlab-secrets.json文件是  GitLab配置文件中用于加密的密钥,用于访问数据库的用户名和密码,以及各种API密钥等等。拷贝旧服务器此文件到新服务器目录。默认目录/etc/gitlab

               使用命令:gitlab-ctl reconfigure  配置文件 。

               据实际情况使用 :gitlab-ctl restart  重启服务。

三、跨版本迁移。

        Gitlab由于版本差异不能平滑迁移,使用docker或者本地虚拟机运行一个与旧服务器同版本的Gitlab把数据先迁移到这个Gitlab,升级此Gitlab版本,之后再备份迁移到新服务器。下面链接是升级Gitlab服务器的官方查询地址,使用gitlab官方源完全可以完成版本升级,无需其他配置。

链接地址:Upgrade PathGitLab - Upgrade Path Wizardicon-default.png?t=N7T8https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/

四、修改Gitlab 密码方法

                 gitlab-rails console -e production

                 u=User.where(id:1).first

                 u.password='密码'

                  u.password_confirmation='密码'

                  u.save

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值