gitlab迁移
1、背景:
- 操作系统:CentOS Linux release 7.5. (Core)
- gitlab版本:9.2.
- 使用rpm包地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-9.2.5-ce.0.el7.x86_64.rpm
备注:需要保证迁移的两台服务器gitlab版本一致。请先关闭selinux、firewalld防火墙。
2、新服务器下载安装gitlab服务:
- wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-9.2.5-ce.0.el7.x86_64.rpm
- yum localinstall gitlab-ce-9.2.-ce..el7.x86_64.rpm
3、备份原有服务器上文件信息:
- 、/etc/gitlab/gitlab.rb:该文件配置了gitlab的域名、邮件发送信息、白名单等相关信息。
- 、/etc/gitlab/gitlab-secrets.json:该文件存储了gitlab的db secret信息。
- 将原有服务器上的以上两个文件复制到新服务器上对应目录下。
4、备份原有服务器上gitlab数据信息:
- 使用以下命令进行备份。
/usr/bin/gitlab-rake gitlab:backup:create- 默认备份完成的文件存放目录为:/var/opt/gitlab/backups。若该目录下不存在,则需要查看/etc/gitlab/gitlab.rb配置中对应的gitlab_rails['backup_path']选项所指定的目录。
5、将原有服务器上的gitlab配置文件、备份数据scp到新服务器的对应目录下:
- #scp gitlab仓库备份数据
- scp /NFS/1533614595_2018_08_07_9..5_gitlab_backup.tar
- #scp gitlab的配置文件
- scp /etc/gitlab/gitlab.rb xx.xx.xx.xx:/etc/gitlab/gitlab.rb
- scp /etc/gitlab/gitlab-secrets.json xx.xx.xx.xx:/etc/gitlab/gitlab-secrets.json
6、在新服务器安装依赖,同时启动对应服务:
- yum install -y curl policycoreutils-python openssh-server postfix
- systemctl enable postfix
- systemctl start postfix
7、在新服务器重新进行gitlab配置,同时进行数据恢复:
- gitlab-ctl reconfigure
- gitlab-rake gitlab:backup:restore BACKUP=1533614595_2018_08_07_9.2.5
其中1533614595_2018_08_07_9.2.5对应的为gitlab备份tar包的版本号。- 保守起见,先进行gitlab-ctl reconfigure,然后启动服务。
gitlab-ctl start
8、gitlab.rb配置简要解析:
- external_url 'http://gitlab.xxx.com' #gitlab域名
- gitlab_rails['gitlab_email_enabled'] = true #gitlab启用email通知
- gitlab_rails['gitlab_email_from'] = 'xxx-gitlab@xxx.com' #gitlab email来源
- gitlab_rails['gitlab_email_display_name'] = 'gitlab-servce' #email展示名称
- gitlab_rails['gitlab_email_reply_to'] = 'xxx-gitlab@xxx.com' #gitlab返回邮箱地址
- gitlab_rails['gitlab_email_subject_suffix'] = ''
- gitlab_rails['manage_backup_path'] = true #启用backup路径配置
- gitlab_rails['backup_path'] = "/NFS" #设置gitlab备份路径
- gitlab_rails['gitlab_shell_ssh_port'] = xxxx #设置gitlab ssh端口
- gitlab_rails['git_max_size'] =
- gitlab_rails['git_timeout'] =
- gitlab_rails['gitlab_shell_git_timeout'] =
- gitlab_rails['rack_attack_git_basic_auth'] = {
- 'enabled' => true,
- 'ip_whitelist' => ["192.168.8.118"], #设置gitlab白名单列表
- 'maxretry' => ,
- 'findtime' => ,
- 'bantime' =>
- }
- gitlab_rails['initial_root_password'] = "xxxxxxx" #gitlab初始化root密码
- gitlab_rails['smtp_enable'] = true #设置gitlab 发送邮件smtp服务器信息
- gitlab_rails['smtp_address'] = "smtp.xxx.xxx.com" #设置smtp服务器地址
- gitlab_rails['smtp_port'] = xxx #设置smtp服务器端口
- gitlab_rails['smtp_user_name'] = "xxx-gitlab@xxx.com" #设置smtp用户名
- gitlab_rails['smtp_password'] = "xxxxxx" #设置smtp密码
- gitlab_rails['smtp_domain'] = "smtp.xxx.com" #设置smtp域名
- gitlab_rails['smtp_authentication'] = "login"
- gitlab_rails['smtp_enable_starttls_auto'] = true
- gitlab_rails['smtp_tls'] = true
- gitlab_rails['gitlab_email_from'] = 'xxx-gitlab@xxx.com'
- git_data_dir "/data/gitlab-data" #设置gitlab数据目录
- gitlab_rails['ldap_enabled'] = true #设置gitlab ldap认证
- gitlab_rails['ldap_servers'] = YAML.load <<-'EOS'
- main: # 'main' is the GitLab 'provider ID' of this LDAP server
- label: 'LDAP'
- host: 'xx.xx.xx.xx' #设置ldap服务器地址
- port: xxx #设置ldap服务器端口
- uid: 'cn'
- method: 'plain' # "tls" or "ssl" or "plain"
- bind_dn: 'cn=xxx,dc=xxx,dc=com' #ldap bind dn
- password: 'xxx' #ldap bind dn用户对应的密码
- active_directory: true
- allow_username_or_email_login: true #允许用户名和邮箱登录
- block_auto_created_users: false
- base: 'dc=xxx,dc=com' #ldap base dn信息,即搜索域
- attributes:
- username: ['cn', 'uid']
- email: ['mail', 'email']
- EOS
gitlab迁移的更多相关文章
- Gitlab迁移之数据库报错解决
Gitlab迁移需同版本迁移,恢复过程会出现如下提示: WARNING: no privileges were granted for "public" 解决方法: 1. 编辑/ ...
- 把Gitlab迁移到Docker容器里
把Gitlab迁移到Docker容器里 Apr 9, 2015. | By: 任怀林 公司的gitlab一直是运行在ovm的虚拟机里的,版本还是6.7.5.版本有点老了,最近在研究docker,于是想 ...
- 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 数据 ...
- 2018-07-09--记录一次gitlab迁移事件及遇到的问题
一.事情起因 因机房服务器即将到期,需要将即将到期的服务器迁移至云上,迁移之前没有查看老环境的Gitlab是什么版本,直接装的Gitlab社区版,做数据导入时提示版本错误: [root@vpn-ser ...
- gitlab迁移升级
一.迁移步骤 1.首先安装最新版本gitlab(gitlab7.2安装) 2.停止旧版本gitlab服务 3.将旧的项目文件完整导入新的gitlab bundle exec rake gitlab:i ...
- docker gitlab迁移 备份 部署 搭建以及各种问题
当前环境 服务器A 服务器B ubuntu docker gitlab(版本一致) docker安装gitlab 由于考虑到gitlab 包含了⾃身的nginx.数据库.端⼝占⽤等等因数,这⾥使⽤的是 ...
- GitLab 迁移与升级
参考: [ 博客园 BigBao ] 环境说明: OS: CentOS 7.x gitlab-ce 初始版本: 8.8.5 gitlab-ce 升级到版本: 11.2.3 升级方式: rpm 安装升级 ...
- gitlab迁移库地址后远程的切换
本地需要把origin删除,然后再添加新的origin git remote rm origingit remote add origin [url] git push --set-upstream ...
- gitlab 迁移
http://www.cnblogs.com/crysmile/p/9505527.html
随机推荐
- 电信3G上网卡自己主动重拨
须要使用电信3G无线上网卡做一个測试,由于要长时间使用,在使用的过程中老掉线,所以做了一个自己主动重连的批处理,好了,闲话少叙,开工: 先建立一个拨号连接: 001.png watermark/2/t ...
- 【Nodejs】Browsersync同步浏览器测试
说明文档:http://www.browsersync.cn/docs/ 安装命令: ①全局安装 npm install -g browser-sync ②局部/本地安装 npm install br ...
- Usaco2012-2013 金组 题解 (暂缺Hill walk以及Figue eight)
https://files.cnblogs.com/files/Winniechen/usaco2012-2013.pdf 做的不是很好,还请见谅! 如果有什么疑问,可以QQ上找我. QQ号:1967 ...
- 添加树莓派python程序自启动的方法
首先确保网络,硬件连接都正确.保证py程序可以正确运行. 然后远程登录树莓派 打开这个文件来修改自启动,网上有很多方法都是新建一个脚本来完成的.由于我们是自启动python文件,所以命令会有不同. 如 ...
- WPF save listbox config
UI <Grid x:Class="WzlyTool.ReplyContentUI" xmlns="http://schemas.microsoft.com/win ...
- Android开发——RecyclerView特性以及基本使用方法(二)
0. 前言 随着Android的发展,虽然ListView依旧重要,但RecyclerView确实越来越多的被大家使用.但显然并不能说RecyclerView就一定优于ListView,而是应该根据 ...
- GBDT源码剖析
如今,GBDT被广泛运用于互联网行业,他的原理与优点这里就不细说了,网上google一大把.但是,我自认为自己不是一个理论牛人,对GBDT的理论理解之后也做不到从理论举一反三得到更深入的结果.但是学习 ...
- EJB开发第二期---开发具有本地接口的无状态Bean
一.EJB中的bean 1.1 EJB中bean分类 会话bean(session bean) 负责与客户端交互,是编写业务逻辑的地方,在会话bean中可以通过jdbc直接操作数据库,但大多数情况下都 ...
- fastjson 使用记录
参考: https://www.cnblogs.com/cdf-opensource-007/p/7106018.html import com.alibaba.fastjson.JSON; impo ...
- 定制 input[type="radio"] 和 input[type="checkbox"] 样式
表单中,经常会使用到单选按钮和复选框,但是,input[type="radio"] 和 input[type="checkbox"] 的默认样式在不同的浏览器或 ...