GitLab 迁移与升级
参考: [ 博客园 BigBao ]
环境说明:
- OS: CentOS 7.x
- gitlab-ce 初始版本: 8.8.5
- gitlab-ce 升级到版本: 11.2.3
- 升级方式: rpm 安装升级, 不做额外配置
gitlab 备份与恢复
备份
gitlab-rake gitlab:backup:create
在 gitlab 参数 gitlab_rails['backup_path']
路径中创建备份包, 默认路径为: /var/opt/gitlab/backups
.
备份包格式为: <时间戳>_gitlab_backup.tar
恢复
将备份传输到新 gitlab 服务器, 并将其放在 gitlab 的备份目录下,即 gitlab_rails['backup_path']
设定的路径, 默认为: /var/opt/gitlab/backups
. 并将包权限设定为 777
.
执行恢复:
gitlab-rake gitlab:backup:restore BACKUP=<时间戳>
这里的 时间戳 为所备份文件名的时间戳.
访问中遇到的报错
在新 gitlab web 访问的时候, 可能会报错: 500 ERROR, 查看 /var/log/gitlab/gitlab-rails/production.log
看到如下报错:
Started GET "/market/market" for xx.xx.xx.xx .....
Processing by ProjectsController#show as HTML
Parameters: {"namespace_id"=>"market", "id"=>"market"}
Completed 500 Internal Server Error in 57ms (ActiveRecord: 3.6ms)
OpenSSL::Cipher::CipherError (bad decrypt):
app/models/project.rb:383:in `import_url'
app/models/project.rb:413:in `external_import?'
app/models/project.rb:405:in `import?'
app/models/project.rb:421:in `import_in_progress?'
app/controllers/projects_controller.rb:93:in `show'
lib/gitlab/middleware/go.rb:16:in `call'
解决方式:
gitlab-rails runner "Project.where.not(import_url: nil).each { |p| p.import_data.destroy if p.import_data }"
gitlab 升级
镜像源可以在 [ 这里 ] 获取.
关于镜像源两点说明:
- 需要翻墙访问. (了解一下 ss & proxychains )
- 下载之后修改 .repo 文件 :
sed -i "s/gpgcheck=1/gpgcheck=0/g" /etc/yum.repos.d/gitlab_gitlab-ce.repo
升级顺序
8.8.5 --> 8.17.8 --> 9.5.9 --> 10.2.5 --> 10.5.9 --> 10.8.7 --> 11.2.3
升级方式
在 [ 这里 ] 搜索对应版本镜像源, 执行脚本, 修改 .repo
的 gpgcheck
参数, 用 yum
安装即可完成升级.
GitLab 迁移与升级的更多相关文章
- gitlab 迁移、升级打怪之路:8.8.5--> 8.10.8 --> 8.17.8 --> 9.5.9 --> 10.1.4 --> 10.2.5
gitlab 迁移.升级打怪之路:8.8.5--> 8.10.8 --> 8.17.8 --> 9.5.9 --> 10.1.4 --> 10.2.5 gitlab 数据 ...
- Gitlab备份与恢复、迁移与升级
0.Gitlab安装 1.安装和配置必要的依赖关系 在CentOS7,下面的命令将在系统防火墙打开HTTP和SSH访问. yum install curl openssh-server postf ...
- Gitlab日常维护(三)之Gitlab的备份、迁移、升级
一.Gitlab的备份 使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份 [root@gitlab ~]# gitla ...
- 把Gitlab迁移到Docker容器里
把Gitlab迁移到Docker容器里 Apr 9, 2015. | By: 任怀林 公司的gitlab一直是运行在ovm的虚拟机里的,版本还是6.7.5.版本有点老了,最近在研究docker,于是想 ...
- Gitlab 安装、升级、备份、恢复、汉化等
一.Gitlab安装 1. 基于yum方式安装Gitlab 安装步骤如下 (1)配置yum源 # vim /etc/yum.repos.d/gitlab-ce.repo (2)复制如下内容并保存(注意 ...
- Gitlab迁移之数据库报错解决
Gitlab迁移需同版本迁移,恢复过程会出现如下提示: WARNING: no privileges were granted for "public" 解决方法: 1. 编辑/ ...
- Linux服务器上的禅道迁移及升级方法(Linux to Linux)
由于阿里云服务器(Linux系统)到期停用,故需要将部署在该服务器上的禅道迁移到新的Linux服务器上.另外,借此机会,正好可以对旧版禅道进行一次升级.下面总结此次迁移和升级的具体操作方法. 一.禅道 ...
- gitlab(7.9)升级到8.0.1
1.gitlab8.0更新说明 GitLab 8.0 现在完全集成了持续集成工具 (GitLab CI) ,此外还完全重写了 UI,节省了至少 50% 的磁盘空间.更快的合并,内置持续集成(CI)到 ...
- 13-MySQL DBA笔记-迁移、升级、备份、恢复数据库
第13章 迁移.升级.备份.恢复数据库本章将为读者讲述数据库的各种维护任务:迁移.升级.备份和恢复.因为每个人熟悉的工具不同,其对应的迁移.升级.备份和恢复的方式也都略有不同,本书将尽量对笔者认为最具 ...
随机推荐
- Microsoft.Practices.EnterpriseLibrary
项目中使用了Microsoft.Practices.EnterpriseLibrary这个东西,根据名字猜测和微软有关系(可以翻译为:微软实践企业库). 看到了引入了两个命名空间: using Mic ...
- Java中的死锁问题
死锁问题: 例如有两个线程, 线程1与线程2. 线程1在执行的过程中, 要锁定对象1, 2才能完成整个操作, 首先锁定对象1, 再锁定对象2. 线程2在执行的过程中, 要锁定对象2, 1才能完成整个操 ...
- 创建、编译、执行 java程序
java源文件(.java)——Java字节码文件(.class)——在java虚拟机上执行 其他语言很多是编译后执行,所以无法跨平台
- 记一次dll强命名冲突事件
一 问题的出现 现在要做一个net分布式平台,平台涉及多个服务之间调用问题,最基础的莫过于sso.由于我们的sso采用了wcf一套私有框架实现,另外一个webapi服务通过接口调用sso服务.由于s ...
- Sqoop使用笔记(转载)
Sqoop是Apache顶级项目,主要用来在Hadoop和关系数据库中传递数据.通过sqoop,可以方便的将数据从关系数据库导入到HDFS,或将数据从HDFS导出到关系数据库. 关于Sqoop 官网S ...
- MyBatis事务管理机制
MyBatis作为Java语言的数据库框架,对数据库的事务管理是其非常重要的一个方面. 本文将讲述MyBatis的事务管理的实现机制,首先介绍MyBatis的事务Transaction的接口设计以 ...
- BZOJ 口胡记录
最近实在是懒的不想打代码...好像口胡也算一种训练,那就口胡把. BZOJ 2243 染色(树链剖分) 首先树链剖分,然后记录下每个区间的左右端点颜色和当前区间的颜色段.再对每个节点维护一个tag标记 ...
- 【题解】SCOI2008配对
贪心+dp~观察数据,发现一个规律:将数字排序之后,最优匹配只可能产生在该数字和与它距离不超过二的数字之间. 所以可以用dp[i]代表前i个数(排序)匹配的最小差值,之后暴力选出该新数应该如何匹配. ...
- 关于Javac编译器的那点事(一)
Javac是什么? 它是一种编译器,将Java对人非常友好的语言,编译转化对所有机器都非常友好的语言,即:JVM能够识别的语言,也就是Java字节码.而Java字节码,说白了就是一连串二进制数字. J ...
- 【BZOJ 3811】玛里苟斯 大力观察+期望概率dp+线性基
大力观察:I.从输出精准位数的约束来观察,一定会有猫腻,然后仔细想一想,就会发现输出的时候小数点后面不是.5就是没有 II.从最后答案小于2^63可以看出当k大于等于3的时候就可以直接搜索了 期望概率 ...