# gitlab迁移并升级

注意:安装与导出数据一样版本的gitlab.

  1. # 在旧服务器查看gitlab的版本
    docker exec gitlab gitlab-rake gitlab:env:info
    
  2. # 在新服务器安装相同版本的gitlab。

    gitlab的安装步骤

  3. # 在原服务器备份代码数据
    #进入gitlab容器
    docker exec -it gitlab /bin/bash
    #查看gitlab版本,新服务器要安装相同版本的gitlab。
    gitlab-rake gitlab:env:info
    #执行备份
    gitlab-rake gitlab:backup:create
    
    #或直接执行以下一条语句
    docker exec gitlab gitlab-rake gitlab:backup:create
    
  4. # 传输备份文件到新服务器
    scp /home/docker/data/gitlab/backups/xxxxxxxxxx_yyyy_MM_dd_version_gitlab_backup.tar root@ip:/home/docker/data/gitlab/backups/
    
  5. # 恢复数据
    #改权限
    chmod 777 xxxxxxxxxx_yyyy_MM_dd_version_gitlab_backup.tar
    #进入gitlab容器
    docker exec -it gitlab /bin/bash
    #停止gitlab服务
    gitlab stop
    #恢复数据(文件名可不写全)
    gitlab-rake gitlab:backup:restore BACKUP=xxxxxxxxxx_yyyy_MM_dd_version
    #根据提示输入两次yes
    #启动gitlab服务
    gitlab-ctl start
    
  6. # gitlab版本升级

    官方升级指南 (opens new window)

    一句话:循环升级

    以10.8.3为例升级路径:10.8.3->10.8.7->11.11.8->12.0.12->12.8.5->12.9.2

    #进入gitlab容器
    docker exec -it gitlab /bin/bash
    #停止全部服务
    gitlab-ctl stop
    #退出gitlab容器
    exit
    #停止gitlab容器
    docker stop gitlab
    #删除gitlab容器
    docker rm gitlab
    #拉取下一版本
    /home/docker/script/run-gitlab.sh <version>
    #登录账号查看是否正常
    #循环以上步骤即可升到latest