基本信息
安装版本
GitLab:社区版本gitlab-ce-14
ContOS:CentOS Linux release 7.9
服务器:
11.22.33.44
访问地址
http://gitlab.lihuayong.com:8888
需要配置本地host映射
11.22.33.44 gitlab.lihuayong.com
日志地址:/var/log/gitlab/
服务地址:/var/opt/gitlab/
安装
#查看是否安装依赖
rpm -qa | grep policycoreutils
rpm -qa | grep policycoreutils-python
rpm -qa | grep openssh-server
rpm -qa | grep openssh-clients
#安装缺少的依赖
yum -y install policycoreutils policycoreutils-python openssh-server openssh-clients
#下载
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.0.2-ce.0.el7.x86_64.rpm
#安装
rpm -i gitlab-ce-14.0.2-ce.0.el7.x86_64.rpm
配置
#更改git存放仓库的默认路径则
mkdir -pv /mnt/disk/git-data
cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
vim /etc/gitlab/gitlab.rb
#外部访问url(经过编译后,自动将这个配置编译到nginx配置,nginx就无需配置了),防火墙开启此端口
external_url 'http://gitlab.lihuayong.com:8888'
prometheus['listen_address'] = '127.0.0.1:8890'
#启用git_data_dirs参数,并修改如下
git_data_dirs({
"default" => {
"path" => "/mnt/disk/git-data"
}
})
puma['port'] = 8891
命令
#重置并启动GitLab,提示"ok: run:"表示启动成功
gitlab-ctl reconfigure
gitlab-ctl restart
#常用命令
# 启动所有 gitlab 组件;
gitlab-ctl start
# 停止所有 gitlab 组件;
gitlab-ctl stop
# 重启所有 gitlab 组件;
gitlab-ctl restart
# 查看服务状态;
gitlab-ctl status
# 重新编译gitlab的配置;注意:执行此命令会把gitlab的nginx组件的配置还原,导致自定义修改的端口以及域名等都无效
gitlab-ctl reconfigure
# 检查gitlab;
gitlab-rake gitlab:check SANITIZE=true --trace
# 查看日志;
gitlab-ctl tail
gitlab-ctl tail nginx/gitlab_access.log
#查看gitlab版本
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
备份/恢复
本地备份
https://www.cnblogs.com/breakering/p/9712040.html
vim /etc/gitlab/gitlab.rb
----------------------------------------
#更改配置
#修改备份目录
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
#保留部分备份文件,以秒为单位,保留7天
gitlab_rails['backup_keep_time'] = 604800
----------------------------------------
gitlab-ctl reconfigure
gitlab-ctl restart
#备份命令,该命令会备份gitlab仓库、数据库、用户、用户组、用户密钥、权限等信息。
gitlab-rake gitlab:backup:create
#定时备份gitlab
vim /etc/crontab
#每天凌晨4点进行一次自动备份,环境变量CRON=1的作用是如果没有任何错误发生时, 抑制备份脚本的所有进度输出
0 4 * * * root /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1
#然后重启crontab服务
systemctl restart crond
恢复
新服务器上的gitlab的版本号必须与创建备份时的gitlab版本号相同。
#停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
#恢复gitlab仓库,从1537261122_2018_09_18_9.2.5这个备份编号中,恢复数据,如果出现多个done的信息,说明整个gitlab数据就已经正常恢复完毕。
gitlab-rake gitlab:backup:restore BACKUP=1537261122_2018_09_18_9.2.5
#启动gitlab服务
gitlab-ctl start