Basic Information
installed version
GitLab:社区版本gitlab-ce-14
ContOS:CentOS Linux release 7.9
server:
11.22.33.44
address
http://gitlab.lihuayong.com:8888
Need to configure local host mapping
11.22.33.44 gitlab.lihuayong.com
Log address: /var/log/gitlab/
Service address: /var/opt/gitlab/
Install
#查看是否安装依赖
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
configuration
#更改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
Order
#重置并启动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
backup/restore
local backup
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
recover
The version number of gitlab on the new server must be the same as the version number of gitlab when the backup was created.
#停止相关数据连接服务
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