作者:王意之 | 来源:互联网 | 2023-05-19 12:26
前一阵做了一个gitlab迁移,这里记录一下,话不多说,进入正题。
注:这里用的是Ubuntu14.04 64位
意:迁移的gitlab两个版本必须一致。
1、迁移环境 从 A 迁移到 B
首先在 B 服务器上面把环境部署好,这里用deb包安装,
更新系统:
sudo apt-get ubdate
sudo apt-get upgrade
为gitlab创建一个git用户
sudo adduser --disabled-login --gecos 'GitLab' git
插入依赖包:
sudo apt-get install build-essential cmake zlib1g-dev libyaml-dev libssl-devlibgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl openssh-serverredis-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-devlibicu-dev logrotate
安装git 和postfix(邮件服务器)
sudo apt-get install git postfix
安装postgresql数据库等工具类:
sudo apt-get
install postgresql postgresql-
client libpq-dev
安装gitlab-ce的deb包(在gitlab官网上面下载一个或者在清华大学开源镜像站里面下载)
dpkg -i gitlab-ce-XXX.deb
安装完成后配置一下:
sudo gitlab-ctl reconfigure
gitlab 默认的保存数据目录在/var/opt/gitlab
启动gitlab:/opt/gitlab/bin/gitlab-ctl start
2、下面是迁移:
在A服务器上面备份一个新的gitlab备份内容,把备份内容拉到B服务器上面刚刚安装的gitlab那台服务器,放在/var/opt/gitlab/backups下面。
(也可以更改备份目录,在/etc/gitlab/gitlab.rb里面改,这是gitlab的配置文件,也可以在里面配置邮箱。)
从备份文件的编号恢复例如:1479151844
gitlab-rakegitlab:backup:restore BACKUP=1479151844
换原后启动
这里如果你要是不想配置gitlab的配置文件也可以直接把旧的拷贝过来用,记得把新的备份。在/var/opt/gitlab/nginx/conf/gitlab-http.conf
里面修改server_name改成访问的域名跟旧的一样,也可以把旧的拷贝过来)
更改完成后重新配置一下:
sudo gitlab-ctl reconfigure
gitlab升级:
先备份一个文件防止更新失败:gitlab-rake gitlab:backup:create
更新gitlab软件包:
apt-get update
apt-get install gitlab-ce
下载最新的gitlab deb包,
停止服务:
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-ctlstop nginx
安装下载下来的安装包dpkg -i gitlab_x.x.x-omnibus.xxx.deb方式进行升级
升级完以后重新加载一下配置:gitlab-ctl reconfigure
重启gitlab服务,进入网页检查是否成功。
进入网页检查版本是否更新成功。