事由:

老git服务器centos 7.2上的git版本是8.13.5,先特在一台测试机centos 7.2上安装git 8.13.5 后,还原git后,在对测试服务器上git进行升级操作。

测试服务器git升级没有问题后,在对正式git进行升级。

gitlab服务器上查看各个版本的最后版本:https://packages.gitlab.com/gitlab/gitlab-ce

升级版本步骤 8.13.5-》8.17.8(8中最大的版本)-》9.5.9(9中最大的版本)-》10.8.7(10中最大版本)暂时不升级11版本。

1、测试服务器安装git

安装gitlab-ce-8.13.5-ce.0.el7.x86_64
#curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh |bash
#yum install gitlab-ce-8.13.5-ce.0.el7.x86_64

也可以是国内的镜像地址

[root@t101 yum.repos.d]# more gitlab_gitlab-ce.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key

  

2、备份老的git

备份数据
#/opt/gitlab/bin/gitlab-rake gitlab:backup:create
执行后在/var/opt/gitlab/backups目录创建一个名称类似为1502357536_2019_01_10__gitlab_backup.tar的压缩包
备份配置文件
#/etc/gitlab/gitlab.rb 配置文件须备份
#/var/opt/gitlab/nginx/conf nginx配置文件

3、还原git数据和配置文件

将测试服务器gitlab和nginx配置文件备份1、将备份文件权限修改为777第一步,将备份文件权限修改为777,不然可能恢复的时候会出现权限不够,不能解压的问题

chmod 777 1502357536_2017_08_10_9.4.3_gitlab_backup.tar
2、执行命令停止相关数据连接服务
第二步,执行命令停止相关数据连接服务
# 停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
3、执行命令从备份文件中恢复Gitlab
第三步,执行命令从备份文件中恢复Gitlab
gitlab-rake gitlab:backup:restore BACKUP=备份文件编号
例如我们的备份文件的编号是1502357536_2017_08_10_9.4.3,因此执行下面的命令即可恢复gitlab
gitlab-rake gitlab:backup:restore BACKUP=1502357536_2017_08_10_9.4.3
出现交互页面,输入yes回车。
4、恢复完成后,启动gitlab
gitlab-ctl reconfigure
gitlab-ctl start

还原时报错

[root@t101 ~]# gitlab-rake gitlab:backup:restore BACKUP=1548270207
no backups found
The specified backup doesn't exist!

解决方式

先执行一下备份操作后,在执行还原

[root@t101 ~]# gitlab-rake gitlab:backup:create

在 /var/opt/gitlab/backups中生成文件,同时将copy过来的文件到该目录下。

4、 升级到gitlab-ce-8.17.8-ce.0.el7.x86_64

#curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
#yum update gitlab-ce-8.17.8-ce.0.el7.x86_64 gitlab-ctl reconfigure 中有项目目录报错同时页面502错误,需要执行下面的chmod
chmod 2770 /home/data/git/git-data/repositories gitlab-ctl reconfigure
gitlab-ctl pg-upgrade
gitlab-ctl start 登录页面查看版本是否正确

  

5、升级到gitlab-ce-9.5.9-ce.0.el7.x86_64  

#curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
#yum update gitlab-ce-9.5.9-ce.0.el7.x86_64
#gitlab-ctl reconfiugre
#gitlab-ctl start
登录页面查看版本是否正确

6、升级到gitlab-ce-10.8.7-ce.0.el7.x86_64

#curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | bash
#yum update gitlab-ce-10.8.7-ce.0.el7.x86_64
#gitlab-ctl reconfiugre
#gitlab-ctl start
登录页面查看版本是否正确

  

centos 7.2 部署并升级gitlab的更多相关文章

  1. [转]Centos 7 安装部署 GitLab 服务器

    Centos 7 安装部署 GitLab 服务器 转自:https://www.jianshu.com/p/79bfded68899 文前说明 作为码农中的一员,需要不断的学习,我工作之余将一些分析总 ...

  2. 一、CentOS 7安装部署GitLab服务器

    一.CentOS 7安装部署GitLab服务器 1.安装依赖软件 yum -y install policycoreutils policycoreutils-python openssh-serve ...

  3. 二、CentOS 7安装部署GitLab服务器(解决邮箱发信问题)

    一.环境安装(10.0.0) 1.安装依赖软件 yum -y install policycoreutils policycoreutils-python openssh-server openssh ...

  4. CentOS Mono Nginx 部署 MVC4+WebApi

    CentOS Mono Nginx 部署 MVC4+WebApi 经过几天的折磨,终于在CentOS上成功部署了MVC4+WebApi.Mono上的服务器推荐两种:Jexus(国产高人写的一款很牛的服 ...

  5. 如何在CentOS 7上部署Google BBR【搬运、机翻】

    如何在CentOS 7上部署Google BBR 本文章搬运自 https://www.vultr.com/docs/how-to-deploy-google-bbr-on-centos-7 [注:文 ...

  6. centos 7 python2.7.5升级到3.5.2

    centos 7 python2.7.5升级到3.5.2 下载python3.5.2 wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2 ...

  7. CentOS 7.2 部署Saltstack

    CentOS 7.2部署Saltstack 一.环境介绍: 服务器名称 IP地址 Salt-Master 192.168.30.141 Slave1 192.168.30.131 Slave2 192 ...

  8. Centos 环境一键部署脚本(shell脚本)

    谨以此文纪念吊炸天的Centos环境一键部署方案的新鲜出炉 辛苦大半年,产品准备上线了,BOSS亲自体验安装部署,看着超过200+页的安装文档直接崩溃了(需要部署23个基础服务),经历了超过3个小时的 ...

  9. Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(二)

    Asp.NetCore程序发布到CentOs(含安装部署netcore)--最佳实践(一) 接上一篇 3. Nginx配置反向代理 3.1 cnetos 安装nginx 首先,我们需要在服务器上安装N ...

随机推荐

  1. visual studio 显示引用关系 作者更改项

    visual studio 2017中,每个类或者方法顶部会显示此方法的引用关系或者作者更改项:这个功能极大了提高了我们代码的定位效率:不过有时候却发现每一行代码都有,会增加我们屏幕显示内容,有时候看 ...

  2. GGS-DDU HDU - 4966

    GGS-DDU Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total S ...

  3. Marriage Match IV HDU - 3416(最短路 + 最大流)

    题意: 求有多少条最短路 解析: 正着求一遍最短路 得dis1 反着求一遍得 dis2   然后 遍历所有的边 如果  dis1[u] + dis2[v] + w == dis1[B], 则说明这是一 ...

  4. bzoj 2653: middle (主席树+二分)

    2653: middle Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 2522  Solved: 1434[Submit][Status][Disc ...

  5. MT【189】二次条件配方

    “当一幢建筑物完成时,应该把脚手架拆除干净.”——高斯 (2017北大特优)若对任意使得关于 \(x\) 的方程 \(ax^2+bx+c=0\)(\(ac\ne 0\))有实数解的 \(a,b,c\) ...

  6. THUSC2017 Day1题解

    THUSC2017 Day1题解 巧克力 题目描述 "人生就像一盒巧克力,你永远不知道吃到的下一块是什么味道." 明明收到了一大块巧克力,里面有若干小块,排成n行m列.每一小块都有 ...

  7. [CF1107E]Vasya and Binary String【区间DP】

    题目描述 Vasya has a string s of length n consisting only of digits 0 and 1. Also he has an array a of l ...

  8. 【转】C++命名空间 namespace的作用和使用解析

    一. 为什么需要命名空间(问题提出) 命名空间是ANSIC++引入的可以由用户命名的作用域,用来处理程序中 常见的同名冲突. 在 C语言中定义了3个层次的作用域,即文件(编译单元).函数和复合语句.C ...

  9. input type=file上传控件老问题

    // 1.用INPUT控制上传文件时,点击INPUT控件出现文件选择框. // 2.如果在手机上使用时,一般不会出现这种较丑的 // 3.于是就自然想到将控件隐藏,然后用一个按钮代替,点击按钮时在函数 ...

  10. LaTeX教程与下载

    LaTeX教程与下载如下: 其实,下载好CTEX 的步骤只有三步.第一步下载好CTEX ,第二步下载编辑器Texstudio ,第三步安装配置TexStudio 详细步骤: 第一步:下载CTEX La ...