配置gitlb仓库路径及备份路径 - 1990bingliu/ubuntu_gitlab GitHub Wiki

gitlab 仓库路径修改

  1. 打开gitlab配置文件 gitlab.rb $ sudo gedit /etc/gitlab/gitlab.rb

  2. 修改git_data_dirs

git_data_dirs({
   "default" => {
     "path" => "/mnt/nfs/data"
    }
 })
  1. 生效gitlab配置 $ sudo gitlab-ctl reconfigure

gitlab 备份目录修改

gitlab_rails['manage_backup_path'] = true
gitlab_rails['backup_path'] = "/mnt/nfs/gitlab-backup" #备份目录
gitlab_rails['backup_archive_permissions'] = 0644 #生成的文件权限
gitlab_rails['backup_keep_time'] = 864000  #保留10天,秒为单位

备份及还原操作

  1. 备份指令 $ sudo gitlab-rake gitlab:backup:create

  2. 设置定时自动备份任务 每天凌晨3点自动备份

crontab -e
0 3 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1
sudo service cron restart 

注意: sudo crontab -ecrontab -e 编辑的不是同一个文件,对应不用户权限的定时任务

注意:环境变量CRON=1的作用是如果没有任何错误发生时, 抑制备份脚本的所有进度输出

  1. 还原备份
sudo cp 140623891_gitlab_backup.tar  /var/opt/gitlab/backups/ 
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
sudo gitlab-rake gitlab:backup:restore BACKUP=140623891   -- 备份文件名的时间戳前缀
sudo gitlab-ctl start
sudo gitlab-rake gitlab:check SANITIZE=true
  1. gitlab迁移 Gitlab迁移与恢复一样,但是要求两个GitLab版本号一致