1. gitlab 备份命令:
# gitlab-rake gitlab:backup:create

1.1 查看备份文件(默认备份路径:/var/opt/gitlab/backups)
# ls /var/opt/gitlab/backups
1545805374_2018_12_26_11.5.4-ee_gitlab_backup.tar

1.2 其他备份:
/etc/gitlab/gitlab.rb        配置文件须备份
/var/opt/gitlab/nginx/conf   nginx配置文件
/etc/postfix/main.cfpostfix  邮件配置备份

1.3 计划任务自动备份:
0 00 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

1.4 自定义路径,编辑配置文件:
# vim /etc/gitlab/gitlab.rb
gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/data/gitlab/backups"    // gitlab备份目录
gitlab_rails['backup_archive_permissions'] = 0644       // 生成的备份文件权限
gitlab_rails['backup_keep_time'] = 7776000       // 备份保留天数为3个月(即90天,这里是7776000秒)
# gitlab-ctl reconfigure                         // 修改完配置文件,需要重载gitlab配置文件:

2. 从备份文件中恢复gitlab
2.1 将备份文件权限修改为777,不然可能恢复的时候会出现权限不够,不能解压的问题
# chmod 777 1545805374_2018_12_26_11.5.4-ee_gitlab_backup.tar

2.2 执行命令停止相关数据连接服务
# gitlab-ctl stop unicorn
# gitlab-ctl stop sidekiq

2.3 执行命令从备份文件中恢复Gitlab
# gitlab-rake gitlab:backup:restore BACKUP=备份文件编号

例如我们的备份文件的编号是1545805374_2018_12_26_11.5.4,因此执行下面的命令即可恢复gitlab
# gitlab-rake gitlab:backup:restore BACKUP=1545805374_2018_12_26_11.5.4

敲完命令后,出现第一个交互页面,
输入“yes”继续。

2.4 启动Gitlab
# gitlab-ctl start

Gitlab的恢复操作会先将当前所有的数据清空,然后再根据备份数据进行恢复
通过gitlab备份文件可以恢复gitlab所有的信息,包括仓库、数据库、用户、用户组、用户密钥、权限等信息。
如果启动gitlab后,访问出现500,可能是redis等程序还没完全启动,等一会儿再试
参考:https://www.cnblogs.com/kevingrace/p/7821529.html

3. gitlab迁移
迁移如同备份与恢复的步骤一样, 只需要将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups即可(如果你没修改过默认备份目录的话).
需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的11.6.0版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为11.6.0在进行备份.

/etc/gitlab/gitlab.rb gitlab     配置文件须迁移,迁移后需要调整数据存放目录
/var/opt/gitlab/nginx/conf       nginx配置文件目录须迁移

# gitlab-ctl stop unicorn
# gitlab-ctl stop sidekiq
# chmod 777 /var/opt/gitlab/backups/1545805374_2018_12_26_11.5.4-ee_gitlab_backup.tar
# gitlab-rake gitlab:backup:restore BACKUP=1545805374_2018_12_26_11.5.4

4. 设置存储仓库数据
默认情况下omnibus-gitlab 将仓库数据存储在 /var/opt/gitlab/git-data目录下,仓库存放在子目录 repositories里面。 以可以通过修改/etc/gitlab/gitlab.rb 的这一行来自定义 git-data 的父目录
# vim /etc/gitlab/gitlab.rb
git_data_dirs({ "default" => { "path" => "/home/gitlab-data" } })      // 把注释取消然后指定新的仓库存储位置

gitlab 备份与恢复的更多相关文章

  1. Git--07 Gitlab备份与恢复

    目录 Gitlab备份与恢复 01). 备份 02). 恢复 Gitlab备份与恢复 ​ 对gitlab进行备份将会创建一个包含所有库和附件的归档文件.对备份的恢复只能恢复到与备份时的gitlab相同 ...

  2. Gitlab备份与恢复、迁移与升级

    0.Gitlab安装 1.安装和配置必要的依赖关系 在CentOS7,下面的命令将在系统防火墙打开HTTP和SSH访问.   yum install curl openssh-server postf ...

  3. gitlab备份与恢复操作方法

    github私有仓库是收费的,有些代码不方便托管到外面的git仓库,因此就产生了自己搭建git服务器的需求. 好在有广大的开源人士的贡献,有了gitlab这一神器. 手动配置较多,直接用集成包: bi ...

  4. Gitlab备份与恢复[七]

    标签(linux): git 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 备份 配置文件中加入 gitlab_rails['bakup_path']='/da ...

  5. gitlab备份与恢复

    (1)备份 1.创建备份目录,并授权 mkdir /data/backups/gitlab -pv chown -R git.git /data 2.修改gitlab配置 vim /etc/gitla ...

  6. 3、gitlab备份与恢复

    1.备份 #修改配置文件,启用备份 [root@localhost ~]# vim /etc/gitlab/gitlab.rb 377 gitlab_rails['backup_path'] = &q ...

  7. git学习------> Gitlab如何进行备份恢复与迁移?

    前段时间,在某台CenterOS服务器上搭建了Gitlab环境,并且大家陆陆续续的都把代码从svn迁移到了gitlab,但是之前的CenterOS服务器并不是搭建在公司的机房环境,而是搭建在办公室的某 ...

  8. GitLab 迁移与升级

    参考: [ 博客园 BigBao ] 环境说明: OS: CentOS 7.x gitlab-ce 初始版本: 8.8.5 gitlab-ce 升级到版本: 11.2.3 升级方式: rpm 安装升级 ...

  9. gitlab 从古老的 bitnami 版本 迁移到官方最新版本

    这是我之前发布在 yuque 的文章.是我刚来新公司的时候帮公司搬迁 git 记录下来的,现在看来去掉敏感部分直接发布也没啥问题啦,就搬家过来,我自己也方便查 XD . 8.1.6 -> 10. ...

随机推荐

  1. linux日常命令之二

    ps -ef 查看当前系统所有进程,ps 进程查看命令,-e 显示所有进程,-f 全格式. free -h 查看系统实际使用内存的情况. 显示格式为: total       used       f ...

  2. 在vue中使用Echarts画曲线图(异步加载数据)

    现实的工作中, 数据不可能写死的,所有的数据都应该通过发送请求进行获取. 所以本项目的需求是请求服务器获得二维数组,并生成曲线图.曲线图的横纵坐标均从获得的数据中取得. Echarts官方文档: ht ...

  3. Codeforces1062A. A Prank(暴力)

    题目链接:传送门 题目: A. A Prank time limit per test second memory limit per test megabytes input standard in ...

  4. 2018.4.25 github创建新项目

    echo "# IntegrateDemo" >> README.md git init git add README.md git commit -m "f ...

  5. windows server 2008 R2之取消多余的安全配置

    一:取消IE浏览器的安全配置(使IE浏览器可以正常上网) 管理员禁用即可 二.取消关机时强制输入关机备注 运行gpedit.msc,选择计算机配置->管理模板->系统->提示“关机时 ...

  6. ab压力测试nginx

    centos7系统: yum install httpd-tools -y #安装ab压力测试工具

  7. Django学习笔记之URL与视图

    视图 视图一般都写在app的views.py中.并且视图的第一个参数永远都是request(一个HttpRequest)对象.这个对象存储了这个http请求的所有信息,其中包括携带的参数以及一些头部信 ...

  8. Written a lua threadpool

    工作原理 由于lua只能单线程运行,该lib要求所有lua代码在单线程,而多线程部分只能为c代码 具体用法上要求多线程部分必须用c实现 相关模块 线程池 异步函数实现框架 Now only a sle ...

  9. C# 代码小技巧

    一 .自动属性. 1.vs下输入prop,Tab键就出现了.   2.有了自动属性,我们不用再额外为一个类的每个公共属性定义一个私有字段(实际上没多大用处的字段), 但是通过反射还是可以看到对应的私有 ...

  10. 【python】Numpy中stack(),hstack(),vstack()函数详解

    转自 https://blog.csdn.net/csdn15698845876/article/details/73380803 这三个函数有些相似性,都是堆叠数组,里面最难理解的应该就是stack ...