• gitlab备份and恢复数据


    备份数据

    1.确定备份的路径

    [root@localhost ~]# cat /etc/gitlab/gitlab.rb |grep backup_path
    # gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
    
    

    2.备份数据

    [root@localhost ~]# /usr/bin/gitlab-rake gitlab:backup:create
    [root@localhost ~]# ls /var/opt/gitlab/backups/1632002877_2021_09_19_12.3.5_gitlab_backup.tar 
    /var/opt/gitlab/backups/1632002877_2021_09_19_12.3.5_gitlab_backup.tar
    
    

    也可以做定时任务通过脚本备份

    [root@localhost ~]# crontab -l
    0 6 * * 0 /server/scripts/backup_gitlab.sh  2>&1 > /dev/null   #每周日的早上六点备份gitlab数据
    [root@localhost ~]# cat /server/scripts/backup_gitlab.sh 
    #!/bin/bash
    wx(){
         curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=b2d0bdd0-0177-441d-9406-cfce1f73fed9' 
       -H 'Content-Type: application/json' 
       -d '
       {
        "msgtype": "markdown",
        "markdown": {
            "content":  "'"$1"'"
        }
    
       }'
    }
    
    
    /usr/bin/gitlab-rake gitlab:backup:create
    if [ $? == 0 ];then
          scp -rp $(find /var/opt/gitlab/backups/  -type f ) root@192.168.1.53:/data/docker/yum/gitlab/backup && rm -rf /var/opt/gitlab/backups/* 
          if [ $? ==0 ];then
               rm -rf /var/opt/gitlab/backups/*
               ssh root@192.168.1.53 'find /data/docker/yum/gitlab/backup/ -type f   -mtime +30   |xargs -i rm -rf {} '
          else
               wx "## ${ZH_NAME} <font color=warning>gitlab备份数据传53送失败!</font> "
          fi
    else
         wx "## ${ZH_NAME} <font color=warning>gitlab备份数据失败!</font> "
    fi
    

    恢复数据

    1.下载安装包 汉化包

    wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm
    wget https://gitlab.com/xhang/gitlab/-/archive/v12.3.5-zh/gitlab-v12.3.5-zh.tar
    

    2.安装gitlab

    yum install -y curl postfix policycoreutils-python openssh-server wget
    yum localinstall gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm -y
    

    3.修改对外暴露服务的端口号 时区

    [root@localhost gitlab]# vim /etc/gitlab/gitlab.rb
    #修改nginx端口号
    nginx[‘listen_port’] = 8088
    gitlab_rails['time_zone'] = 'Asia/Shanghai'
    
    [root@localhost gitlab]# gitlab-ctl reconfigure
    [root@localhost gitlab]# gitlab-ctl restart
    
    

    4.汉化

    #停止gitlab
    [root@localhost data]# gitlab-ctl stop
    
    #解压汉化包
    [root@localhost data]# tar xf gitlab-v12.3.5-zh.tar.gz 
    
    #覆盖语言包
    [root@localhost data]# cp -r gitlab-v12.3.5-zh/* /opt/gitlab/embedded/service/gitlab-rails/
    cp: 无法以目录"gitlab-v12.3.5-zh/log" 来覆盖非目录"/opt/gitlab/embedded/service/gitlab-rails/log"
    cp: 无法以目录"gitlab-v12.3.5-zh/tmp" 来覆盖非目录"/opt/gitlab/embedded/service/gitlab-rails/tmp"
    
    #开启gitlab
    [root@localhost data]# gitlab-ctl start
    

    5.恢复数据

    chmod 777 /var/opt/gitlab/backups/1632002877_2021_09_19_12.3.5_gitlab_backup.tar
    cd /var/opt/gitlab/backups
    gitlab-ctl stop unicorn && gitlab-ctl stop sidekiq
    gitlab-rake gitlab:backup:restore BACKUP=1632002877_2021_09_19_12.3.5
    
    

    参考文档: https://blog.csdn.net/w309827333/article/details/108754484

  • 相关阅读:
    Node.js 项目中使用 Babel
    面向对象第二单元作业总结与反思
    20192429马一 202120222 《网络与系统攻防》实验五 信息搜集技术实践
    20192401 王麦齐 202120222 《网络与系统攻防技术》实验五
    OOUnit2
    如何分析燃尽图?
    wiremock设置接口入参的判断条件
    pycharm常用快捷键
    玩转 Helm 之 upgrade
    点地图
  • 原文地址:https://www.cnblogs.com/yangtao416/p/15320087.html
Copyright © 2020-2023  润新知