51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Gitlab备份、恢复及迁移

文章目录

本文介绍Gitlab备份、恢复及迁移的方法

Gitlab备份 {#title-0}

默认 Gitlab 的备份文件会创建在/var/opt/gitlab/backups文件夹中,格式为时间戳_日期_版本号_gitlab_backup.tar,例如:1519628066_2018_03_10_10.5.1_gitlab_backup.tar

1、修改备份文件夹
vi /etc/gitlab/gitlab.rb

|---|--------------------------| | 1 | vi /etc/gitlab/gitlab.rb |


gitlab_rails['backup_path'] = "/data/gitlab_bak"

|---|----------------------------------------------------| | 1 | gitlab_rails['backup_path'] = "/data/gitlab_bak" |

2、更新配置使其生效
gitlab-ctl reconfigure

|---|------------------------| | 1 | gitlab-ctl reconfigure |

3、手动备份
gitlab-rake gitlab:backup:create

|---|----------------------------------| | 1 | gitlab-rake gitlab:backup:create |

可以配置crontab,每日进行定时备份

Gitlab恢复备份 {#title-1}

1、首先确保备份的tar文件在gitlab.rb配置中描述的备份目录中gitlab_rails['backup_path']

停止gitlab相关服务
gitlab-ctl stop unicorn gitlab-ctl stop sidekiq

|-----|-------------------------------------------------| | 1 2 | gitlab-ctl stop unicorn gitlab-ctl stop sidekiq |

2、接下来恢复备份,指定要恢复备份文件的时间戳
gitlab-rake gitlab:backup:restore BACKUP=1519628066_2018_03_10_10.5.1

|---|-----------------------------------------------------------------------| | 1 | gitlab-rake gitlab:backup:restore BACKUP=1519628066_2018_03_10_10.5.1 |

恢复备份后执行
gitlab-ctl reconfigure

|---|------------------------| | 1 | gitlab-ctl reconfigure |

3、重启并检查gitlab
gitlab-ctl restart gitlab-rake gitlab:check SANITIZE=true

|-----|-----------------------------------------------------------| | 1 2 | gitlab-ctl restart gitlab-rake gitlab:check SANITIZE=true |

如果备份的tar文件和已安装版本的GitLab之间存在GitLab版本不匹配,将会出现错误,需要安装正确的Gitlab版本后重试。

Gitlab迁移 {#title-2}

迁移还是很容易的,在目标服务器上安装好gitlab,把之前的备份文件放到备份目录下,然后执行恢复备份命令即可。

注意:gitlab版本号不同,备份文件也不能相互使用,需要安装对应版本的gitlab

赞(0)
未经允许不得转载:工具盒子 » Gitlab备份、恢复及迁移