准备:

下载版本地址:

https://packages.gitlab.com/gitlab/gitlab-ce

迁移环境:

源码安装的gitlab9.0.13

目标迁移至9.0.13 RPM安装的环境

###################源码安装gitlab9.0.13############参考官方文档

https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/update/

###################RPM安装gitlab9.0.13#######################

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

OS :rhel7.4

关闭防火墙: setenforce 0

修改主机名: vim /etc/hostname  /etc/sysconfig/network   /etc/hosts

安装依赖包:

yum install curlopenssh-server openssh-clients postfix -y

安装glibc新版:

rpm -ivh gitlab-ce-9.x.x-ce.0.el7.x86_64.rpm

编辑文件

vim /etc/gitlab/gitlab.rb

修改如下:

external_url 'http://10.2.177.57:8090'

重置配置

gitlab-ctl reconfigure

gitlab-ctl restart

#################################备份还原#####################

一,备份

cd /home/git/gitlab

sudo -u git -H bundle exec rake gitlab:backup:create RAILS_ENV=production

cd tmp/backups/

scp XXXX  root@IP:/var/opt/gitlab/backups/

二,RPM服务器停止服务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

cd /var/opt/gitlab/backups/

gitlab-rake gitlab:backup:restore BACKUP=1542476495_2018_11_18

=======》报错    =====》解决: ln -s /usr/local/mysql/bin/mysql  /usr/bin/mysql

Errno::ENOENT: No such file or directory - mysql
/opt/gitlab/embedded/service/gitlab-rails/lib/backup/database.rb:58:in `spawn'
/opt/gitlab/embedded/service/gitlab-rails/lib/backup/database.rb:58:in `restore'
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/backup.rake:102:in `block (4 levels) in <top (required)>'
/opt/gitlab/embedded/service/gitlab-rails/lib/tasks/gitlab/backup.rake:53:in `block (3 levels) in <top (required)>'
/opt/gitlab/embedded/bin/bundle:22:in `load'
/opt/gitlab/embedded/bin/bundle:22:in `<main>'
Tasks: TOP => gitlab:backup:db:restore
(See full trace by running task with --trace)

仓库要单独打包还原到/var/opt/gitlab/git-data/repositories

三,启动服务

gitlab-ctl start

四,额外配置

假设源码使用的MySQL数据库

修改RPM默认的数据库

1)登陆MySQL&配置

CREATE USER 'git'@'localhost' IDENTIFIED BY '123456';

SET GLOBAL innodb_file_per_table=1, innodb_file_format=Barracuda, innodb_large_prefix=1;

CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_general_ci`;

GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER, LOCK TABLES, REFERENCES ON `gitlabhq_production`.* TO 'git'@'localhost';

flush privileges;

2)修改gitlab配置文件

vim /etc/gitlab/gitlab.rb

gitlab_rails['db_adapter'] = "mysql2"
gitlab_rails['db_encoding'] = "utf8"
gitlab_rails['db_database'] = "gitlabhq_production"
gitlab_rails['db_username'] = "git"
gitlab_rails['db_password'] = "123456"
gitlab_rails['db_host'] = "127.0.0.1"
gitlab_rails['db_port'] = 3306
postgresql['enable'] = false

3)消除postgresql依赖

vim /opt/gitlab/embedded/service/gitlab-rails/.bundle/config

修改内容为:

BUNDLE_WITHOUT: "development:test:postgres"  ===》MySQL改为postgres

保存

重新启动配置

gitlab-ctl reconfigure

4)安装MySQL依赖

cd /opt/gitlab/embedded/bin/

./gem install mysql2  -v “0.3.20” ===>默认安装的是0.3.20

gitlab-rake gitlab:check  ====》运行该命令会提示版本是否正确  ===》其余信息不用看

gitlab-rake gitlab:setup  gitlab初始化

初始化完成之后可以执行 gitlab-rake gitlab:check检查

5)启动服务

gitlab-ctl restart

gitlab-ctl status 查看启动信息

gitlab 源码安装=》rpm安装横向迁移(version 9.0)的更多相关文章

  1. Linux学习笔记15—RPM包的安装OR源码包的安装

    RPM安装命令1. 安装一个rpm包rpm –ivh 包名“-i” : 安装的意思“-v” : 可视化“-h” : 显示安装进度另外在安装一个rpm包时常用的附带参数有:--force : 强制安装, ...

  2. Linux——【rpm、yun、源码包】安装

    RPM包或者安装源码包 在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松,因为我们不是在图形界面下.所以我们要 ...

  3. Centos 6.5升级gcc : 源码安装 + rpm安装

    1. 前言 采用Centos 6.5默认的gcc版本为4.4.7,不支持c++ 11,需要升级: 首先想到用yum命令:执行yum update gcc-c++或yum update g++ 显示没有 ...

  4. zabbix 3.2.2 server端(源码包)安装部署 (一)【转】

    环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...

  5. 源码包的安装、rsync同步、inotify监测

    一.源码包的安装 1.源码包的作用:yum 使用的是rpm包,rpm包安装的不能指定安装位置 源码包可以按需选择/定制,及时修复bug ,适用于各种平台 2.大致过程:源码包——>make gc ...

  6. [转] ROS2源码编译和安装

    机器人开源操作系统软件ROS在10年后, 终于推出全新架构的ROS2,代号“ardent”.中文意思为“热心的美洲鳖”,看来ROS2要从ROS1的“海龟”变成“土鳖”系列了. 与此同时,ROS2的编译 ...

  7. (3.2)mysql基础深入——mysql源码阅读工具安装与应用

    (3.2)mysql基础深入——mysql源码阅读工具安装与应用 关键字:mysql源码阅读工具 工具列举:一般多用[1][2][3]吧 [1]source insight [2]写字板/记事本 UE ...

  8. CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作

    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614   使用yum安装的MySQL一般版本比较旧,但 ...

  9. Gitlab源码库里代码提交后,如何触发jenkins自动构建?

    版本库里代码提交后,如何触发jenkins自动构建?这是一个面试题,感觉自己回答的并不好,因为并没有用过这个功能,之前公司实际项目用的是svn版本管理,一般都用立刻构建,和定时任务构建(不管代码是否有 ...

  10. JavaWeb-tomcat安装(Unsupported major.minor version 51.0/startup.bat闪退)

    JavaWeb-tomcat安装(Unsupported major.minor version 51.0) 一 启动startup.bat 出错i 今天安装tomcat出错,折腾了一下午,收获了许多 ...

随机推荐

  1. wpf中的数据模板

    wpf中的模板分为数据模板和控件模板,我们可以通过我们自己定制的数据模板来制定自己想要的数据表现形式.例如:时间的显示可以通过图片,也可以通过简单数字表现出来. 例如: (1)先在Demo这个命名空间 ...

  2. protobuffer、gRPC、restful gRPC的相互转化

    转自:https://studygolang.com/articles/12510 文档 grpc中文文档 grpc-gateway,restful和grpc转换库 protobuf 官网 proto ...

  3. 添加图片后xcode报错:resource fork, Finder information, or similar detritus not allowed

    /Users/songximing/Library/Developer/Xcode/DerivedData/Children-cvqgzlzddltkfndhdmzedxbnoxwx/Build/Pr ...

  4. 将DOS格式的shell脚本转为UNIX格式

    shell脚本是UNIX格式,在修改其中内容时,务必保持UNIX格式.UE编辑器打开时,会询问是否转为DOS格式,请点否.如果修改完成后,不能确认是否为DOS格式,可以使用UE文件菜单下的Conver ...

  5. 查找->动态查找表->B+树(无代码)

    文字描述 B+树定义 B+树是应文件系统所需而出的一种B-树的变型树.一棵m阶的B+树和m阶的B-树的差异在于: (1)有n棵子树的结点中含有n个关键字 (2)所有的叶子结点中包含了全部关键字的信息, ...

  6. es基本查询相关的

    一.获取索引的mapping GET linewell_assets_mgt_es/lw_devices/_mapping

  7. eclipse中tomcat无法加载spring boot

    转自: http://blog.csdn.net/u010797575/article/details/50517777 最近搭建一套spring boot框架,作为 application 启动项目 ...

  8. java之反射的基本介绍

    什么是反射 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的以及动态调用对象的方法的功能称为Java的反射 ...

  9. oracle序列的增、删、改、查及使用

    ----------------------------------------------------------------------创建序列:示例:CREATE SEQUENCE SEQ_SS ...

  10. win7远程ubuntu桌面以及Ubuntu14.04安装搜狗输入法 Ubuntu远程登录windows系统

    windows远程登录ubuntu有命令行以及桌面两种方式. 1.命令行的方式我认为putty这款软件比较好,这之前需要在ubuntu电脑上安装上ssh,命令如下(安装与启动): sudo apt-g ...