参考官网: https://docs.gitlab.com/ee/raketasks/backup_restore.html    Backing up and restoring GitLab

及 https://www.cnblogs.com/wenwei-blog/p/6362829.html    gitlab服务器迁移

https://www.ilanni.com/?p=13917   烂泥:gitlab版本升级

1.查看新旧gitlab服务器版本

查看gitlab版本的命令:

gitlab-rake gitlab:env:info

新的gitlab服务器(记为b)与旧的gitlab(记为a)类型和版本要一致,否则可能迁移不成功。

You can only restore a backup to exactly the same version and type (CE/EE) of GitLab on which it was created.

另外,你可以登录旧gitlab的Admin area查看

2.安装小工具

sudo yum install rsync

校验tar版本大于1.30

tar --version

3.先关闭a服务器gitlab部分服务

防止你备份数据的时候还有人更新

gitlab-ctl stop unicorn

gitlab-ctl stop sidekiq

gitlab-ctl stop nginx

4. 备份原a服务器上的的数据

gitlab-rake gitlab:backup:create 
PS: 备份后的文件一般是位于/var/opt/gitlab/backups下, 自动生成文件名文件名
如1527519647_2018_05_28_10.8.1_gitlab_backup.tar
以前的备份文件不带日期,如1527496365_gitlab_backup.tar
不知道从什么时候开始带上日期了。

默认备份以下所有模块:
db (database)
uploads (attachments)
repositories (Git repositories data)
builds (CI job output logs)
artifacts (CI job artifacts)
lfs (LFS objects)
registry (Container Registry images)
pages (Pages content)
如果在后续第6步恢复的时候有部分模块失败,可以跳过某几块
比如:sudo gitlab-rake gitlab:backup:create SKIP=uploads

注:
Use this command if you’ve installed GitLab with the Omnibus package:
sudo gitlab-rake gitlab:backup:create

Use this if you’ve installed GitLab from source:
sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production

5.备份配置文件
/etc/gitlab/gitlab.rb
/var/opt/gitlab/gitlab-rails/etc/unicorn.rb

6. 将步骤2生成的tar文件拷贝到b服务器上相应的backups目录下
可以利用scp进行直接拷贝.
在b服务器上执行
scp username@src_ip:/var/opt/gitlab/backups/1542385134_2018_11_17_10.8.1_gitlab_backup.tar /var/opt/gitlab/backups
PS: username为原服务器的用户名,src_ip原服务器IP地址

7. 在b服务器恢复数据

保证备份文件放在新服务器的/var/opt/gitlab/backups下,如果没有,移过去

mv 1542385134_2018_11_17_10.8.1_gitlab_backup.tar /var/opt/gitlab/backups/
gitlab-rake gitlab:backup:restore  BACKUP=1527496365
PS:BACKUP的时间点必须与原服务器备份后的文件名一致

8.修改配置文件

/etc/gitlab/gitlab.rb

/var/opt/gitlab/gitlab-rails/etc/unicorn.rb

9.重启gitlab

gitlab-ctl reconfigure

gitlab-ctl stop

gitlab-ctl start

10,登录验证

登录新gitlab的Admin area查看

projects、users、groups是否数目一样。

gitlab 10.8.1 迁移的更多相关文章

  1. GitLab初识以及代码迁移

    目录 一.理论概述 1.什么是gitlib 2.GitLab服务构成 3.Git对比SVN 二.部署 1.简单操作GitLab 三.项目实践:SVN代码迁移至GitLab 环境 1.Linux下部署S ...

  2. gitlab 之 升级、迁移

    -----故事背景- 公司服务器用vm装的虚拟机,由于公司服务器经常无故重启,且找不到原因,所以公司准备将vm迁移至Hyper-V,Hyper-V可以自启动虚拟机且免费. -----升级.迁移- 首先 ...

  3. docker+gitlab的安装和迁移

     docker+gitlab的安装 docker search gitlab docker pull docker.io/gitlab/gitlab-ce docker run --name=: -- ...

  4. gitlab的备份与恢复与迁移

    一.gitlab的备份1.1 创建备份目录,并授权 1 2 3 4 [root@linux-node1 ~]# mkdir /data/backups/gitlab -p [root@linux-no ...

  5. ArcGIS for Sever 10.1 服务迁移与恢复

    === 声明:以下内容本是自己写给单位内部同事的参考手册,但是被传到百度文库中.陆续有用户就这方面的问题,通过电话,邮件等方式联系我.首先,感到荣幸.其次是,由于本人当时测试和编写的时候,由于仓促,可 ...

  6. 微软ASP.NET网站部署指南(10):迁移至SQL Server

    1.  综述 第2章的部署SQL Server Compact和第9章的部署数据库更新里解释了为什么终于要升级到完整版SQL Server .本章节将告诉你怎样来做. SQL Server Expre ...

  7. gitlab 10汉化

    记得备份 先检查一下版本,好下载对应的汉化包 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 1)然后下载10.0.x.diff 文件到服务 ...

  8. gitlab 10安装

    电脑环境:centos6.2+gitlab10.0 gitlab10.0 (gitlab-ce-10.0.0-ce.0.el6.x86_64.rpm)下载地址:https://mirrors.tuna ...

  9. centos7 部署 汉化版 gitlab 10.0.2

    更新说明: 20171009:增加3.5的内容 20171008:整理出gitlab部署手册 =============================================== gitla ...

随机推荐

  1. Django框架的使用

    1.创建项目: 语法:django-admin startproject 项目名称 2.Django的项目结构介绍 1.manage.py 功能:包含执行django中的各项操作的指令,不太清楚可以使 ...

  2. 查看win电脑支持的最大内存?

    wmic memphysical get maxcapacity 67108864 大约64G

  3. [zoj4045][思维+dfs]

    http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=4045 题意:给一棵树.这棵树有n个节点,问你这个图能不能分成k个分块.这个 ...

  4. 【BZOJ3242】【UOJ#126】【NOI2013】快餐店

    NOI都是这种难度的题怎么玩嘛QAQ 原题: 小T打算在城市C开设一家外送快餐店.送餐到某一个地点的时间与外卖店到该地点之间最短路径长度是成正比的,小T希望快餐店的地址选在离最远的顾客距离最近的地方. ...

  5. 每天进步一点点-序列化和反序列(将对象写入硬盘文件and从硬盘文件读出对象)

    一个类如果实现了Serializable接口,那么这个类创建的对象就是所谓序列化的对象.所谓“对象序列化”: 简单一句话:使用它可以象存储文本或者数字一样简单的存储对象.一个应用是,程序在执行过程中突 ...

  6. Java-简单的计算器(只能进行加法运算)

    有两个关键的地方: 其一: JTextField field=new JTextField(10); 这是一个文本输入框,里面的参数10的意思是,这个输入框的长度为10列 其二:点击求和按钮,出结果 ...

  7. day 53 js学习之

    ---恢复内容开始--- 1.昨日作业讲解 弄一个上图一样的选择器,可以全选,可以反选,取消 <!DOCTYPE html> <html lang="zh-CN" ...

  8. 手动安装python库

    有些时候由于工作环境的限制如proxy,不能自动安装python 的第三方的库(用python –m pip install package).在这个情况下,只能自己手动安装.以xlwt-1.3.0. ...

  9. REPL

    REPL(Read Eval Print Loop:交互式解释器) 表示一个电脑的环境,类似 Window 系统的终端或 Unix/Linux shell,我们可以在终端中输入命令,并接收系统的响应. ...

  10. 爱今天 APP 闪退怎么办?

    爱今天 APP 闪退怎么办? 爱今天是一款简洁优秀的时间记录 APP. 但也有一些小 Bug,可能是因为不同的手机兼容问题,在添加时间时会出现闪退现象. 可能是因为自己修改了添加时间的方式. 可以通过 ...