Git 已经是代码托管工具中的主流了,如果是自己搭建私有的 Git 服务器我们一般会使用 GitLab ,在《在CentOS7中安装GitLab》 一文中有介绍怎样在 CentOS7 中安装 GitLab 。文本主要介绍怎样迁移 GtiLab 。

环境

  • CentOS:7.4

  • GitLab:10.6.4

新服务器安装 GitLab

安装方法可以按照上面文章中的步骤,但需要注意的是,新服务器上装的 GitLab 的版本和原服务器的 GtiLab 的版本保持一致。

通过下面的命令可以查看原服务器上的 GitLab 的版本:

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

安装指定版本的命令如下:

yum makecache   # 更新本地YUM缓存
yum install -y gitlab-ce-10.6.4  # 安装指定版本

备份

备份非常的简单,只需要执行下面的命令即可:

gitlab-rake gitlab:backup:create

备份文件存储在目录 /var/opt/gitlab/backups 中。

还原

将文件拷贝到新服务器的 /var/opt/gitlab/backups 目录,并执行下面命令给文件设置权限:

chmod 777 1502357536_2017_08_10_9.4.3_gitlab_backup.tar

执行下面的命令进行恢复:

gitlab-rake gitlab:backup:restore BACKUP=文件编号

比如备份文件的名称为 1615384704_2021_03_10_10.6.4_gitlab_backup.tar,那么文件编号为:1615384704_2021_03_10_10.6.4

中间会有两次这种交互式的提示,输入 yes 让其继续执行就可以还原成功。

如果您的迁移和我一样是由外网服务器迁移到内网服务器,如下图:

有两个地方需要注意:

1、在外网服务器上需要使用 nginx 进行代理访问,配置如下:

server {listen       9000;server_name  221.222.10.56;location / {proxy_pass http://10.15.10.133:9000;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrate";}error_page   500 502 503 504  /50x.html;location = /50x.html {root   /usr/share/nginx/html;}
}
  • listen:外网访问的端口

  • server_name:外网服务器 ip

  • proxy_pass:内网 GitLab 的访问地址

2、默认情况下,内网部署的 GitLab 初始化的访问地址也是内网的地址,在界面中看到仓库地址也是内网地址,如下图:

需要修改 GitLab 的配置文件来进行解决,进入到内网的 GitLab 服务器,执行下面命令编辑配置文件:

vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

修改 host 和 port ,如下图:

执行 gitlab-ctl restart 重启 GitLab 服务生效。

最后

最近有一些朋友在后台私有我,说一些思考总结类的文章挺好,挺有收获,但有些文章在网上可以搜索得到,为什么还会写。

像今天这篇就属于此类,我大概解答下:

我在做这些操作实践时是也是通过了大量的搜索,因为使用场景、软件版本等各方面的原因,往往不能一次性成功,还是需要不断尝试,所以我在写这类文章时在开头就会注明环境。总结成文章写出来后对自己也是一个备忘,同时也希望如果有朋友碰到跟我类似场景的,能够带来直接的帮助。

GitLab 服务器的迁移以及注意点相关推荐

  1. 一个月黑风高的夜晚紧急完成gitlab服务器数据迁移

    文章目录 前言 修复过程 备份数据 修改存放目录 关闭服务 迁移数据 刷新配置 启动服务 总结 前言 真是无巧不成书,白天刚刚讨论了一天 SVN 服务器迁移事情,晚上突然被告知 gitlab 服务无法 ...

  2. GitLab服务器迁移

    1.背景 由于GitLab内存消耗很大,已经影响到A服务器上的其他服务,同时考虑到代码管理服务应该单独部署在一台服务器上,因此决定从服务器A迁移到服务器B上.两台服务器均是CentOS 7,gitla ...

  3. gitblit如何迁移入gitlab合并迁移_github仓库迁移到gitlab以及gitlab仓库迁移到另一个gitlab服务器...

    一. github仓库迁移到gitlab 先进入 new project: 选择 Import project, 选择下面的github: 进入后,这里需要github的 personal acces ...

  4. gitlab服务器代码存储位置,gitlab 数据目录迁移

    一般情况下,采用gitlab作为版本管理工具,内网环境需要搭建gitlab服务器,安装好gitlab应用之后,就开始使用,但是随着时间的推移,发现gitlab的repository会越来越大.一般,从 ...

  5. Git服务器所有项目代码迁移,Gitlab代码工程迁移

    由于项目需要,有时可能需要将代码工程从一个gitlab服务器迁移至另一个gitlab服务器.下面介绍三种迁移的方式. 方案一:直接在gitlab界面上import 该方法是在gitlab网页上一个一个 ...

  6. gitlab旧服务器备份迁移新服务器

    目录 旧服务器准备工作 新服务器准备工作 # gitlab旧服务器备份迁移新服务器 旧服务器准备工作 1. 查看gitlab版本号(保证两个服务器的gitlab版本一致)     ```     ca ...

  7. gitlab云盘定时自动备份,gitlab服务器迁移、还原恢复

    1:前言 防止gitlab服务器奔溃,或者被有心人恶意删除,所以采用云端备份的方式.即使服务器被删除,也可以在云端下载到新服务器,重新恢复. 2:备份gitlab 注:gitlab备份还原只能在相同版 ...

  8. 如何在两个服务器之间迁移MySQL数据库

    英文原作者:Etel Sverdlov   转载&翻译来源:https://www.digitalocean.com/community/tutorials/how-to-migrate-a- ...

  9. CentOS 7下Gitlab安装和迁移

    Gitlab做迁移,有一些麻烦,有如下结论: 1:Gitlab版本要完全一致,mysql版本最好一致(不能相差太大),服务器版本可以不一样(例如:迁移前环境为centos6.5,迁移后环境为cento ...

最新文章

  1. lombok 下的@Builder注解用法
  2. nginx mysql5.7_Centos7+Php7+Mysql5.7+Nginx源码安装实战部署手册
  3. 【官方文档】《暗黑世界V1.4》API说明!
  4. Js拼接嵌套php代码,分享一个js文件中嵌套php会出错的问题
  5. 常用的一些类,少走弯路。待续...
  6. 【Selenium2】【项目实战】
  7. xx闪购——顶部的菜单栏
  8. Python时钟代码——利用python turtle实现模拟时钟
  9. matlab选址问题——分级选址定容
  10. jQuery插件及表单验证
  11. 管理类联考-英语: 前导( 三 )
  12. 关于对音频的合并,左右声道的分离以及播放的操作
  13. Android动画之帧动画
  14. ASP.NET页面在IE缓存的清除办法 (转)
  15. 仿某App锁屏页Gallery
  16. 跳蚤市场应用市场现状研究分析-
  17. (winform)PDF文档或视频文件在线阅读或观看工具
  18. L3-008 喊山PTA(BFS)
  19. 《羊了个羊》一夜爆红?产品运营带来的巨大红利
  20. php(ThinkPHP)实现微信小程序的登录过程

热门文章

  1. 罗马数字 java_【leetcode刷题】[简单]13.罗马数字转整数(roman to integer)-java
  2. PHP5加载|安装外部C动态库
  3. linux启动时挂载rootfs的几种方式 .
  4. Java泛型主题讨论
  5. MySQL--字符集
  6. [正则表达式] 可以解析HTML/XHTML页面的所有元素和结构的Regular Expression![ZT]
  7. HTML标题h,HTML H标题标签
  8. mac恢复iphone_免费下载:旧Mac和iPhone壁纸的令人震惊的完整档案
  9. 使用组策略推送exchange自签名证书
  10. 【前端基础进阶】JS-Object 功能详解