gitlab安装/配置/维护

安装配置

环境与环境

  系统 centos-7   版本8.9.5 ,当前主流版本,最新版变化较大

安装

  ruby 安装(gitlab 是ruby 开发的所以依赖于ruby环境)
    版本
    [root@k8s-master ~]# ruby -v
    ruby 2.4.2p198 (2017-09-14 revision 59899) [x86_64-linux]
  gilab 安装

安装依赖
sudo yum install curl policycoreutils openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewall

rpm -ivh gitlab-ce-8.9.5-ce.0.el7.x86_64.rpm (视频目录有安装包)
View Code

配置

vi /etc/gitlab/gitlab.rb
external_url 'http://192.168.231.101'    (默认地址是主机名)
gitlab-ctl reconfigure          #发起了一个自动化配置的过程
View Code

访问

  http://192.168.231.101
  重置密码,root 登录

gitlab 组成

gitlab 是由一系列的组件组成的,安装的时候就一键安装了

常用命令

gitlab-ctl                 查看所有命令
gitlab-ctl status             查看各个服务进程状态
gitlab-ctl tail nginx         查看nginx 日志
cd /var/log/gitlab            所有服务日志目录
gitlab-ctl reconfigure         重新加载配置
gitlab-ctl show-config         查看当前配置信息
gitlab-ctl restart            重启所有服务
gitlab-ctl restart server-name   重启指定服务
gitlab-rake gitlab:backup:create 备份仓库及相应数据库数据
gitlab-rake gitlab:backup:restore BACKUP=1563663259        #根据备份文件的时间戳来寻找确定要恢复的备份文件
View Code

notice

  更改配置文件后必须执行gitlab-reconfigure

gitlab 目录

/etc/gitlab/                      配置文件位置
/opt/gitlab/                      应用程序和相应依赖程序(nginx/redis等)
/var/opt/gitlab/git-data/               代码存放位置
/var/opt/gitlab/backups/    gitlab       备份文件位置
/var/log/gitlab/                     日志文件位置
/var/opt/gitlab/    gitlab-ctl reconfigure        编译后的应用数据和配置文件无需认为配置
View Code

 邮箱配置

gitlab 配置邮件服务,这样gitlab 上的项目任务创建后就会以邮件形式发送给开发者而不用开发者登录gitlab后才能发现。

vi  /etc/gitlab/gitlab.rb  

备份管理

开启备份功能:

vi /etc/gitlab/gilab.rb
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"            #取消注释,也可以根据需要更改目录
gitlab_rails['backup_keep_time'] = 604800                  #取消注释,保留指定时间内的备份数据,单位秒
gitlab-ctl reconfigure
gitlab-ctl restart
chown git.git /var/opt/gitlab/backups -R
View Code

执行备份

/opt/gitlab/bin/gitlab-rake gitlab:backup:create    #手动执行备份,此备份不仅备份了代码仓库同时也包括了数据库中的数据
crontab -e #把上面命令加入计划任务,定期备份
1563663259_gitlab_backup.tar    #备份命令执行后会生成备份文件名格式为 时间戳_gitlab_backup.tar
date -d @1563663259    #翻译时间戳对应当前时间
View Code

备份恢复:

停止数据写入服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekip
ls /var/opt/gitlab/backups    
gitlab-rake gitlab:backup:restore BACKUP=1563663259      #根据备份文件的时间戳来寻找确定要恢复的备份文件
gitlab-ctl start unicorn
gitlab-ctl start sidekip
gitlab-ctl restart                        #重启所有服务,如果执行此命令就无需执行上面命令
View Code

FAQ

现象:gitlab 使用很慢,服务器性能正常

root用户登录,查看监控情况

 如果队列长度超过阈值就会等待,gitlab 使用就会慢

 例如:有的邮件地址配置错误,邮件发送失败就会一直重试,导致队列满了,进而导致很慢

原文地址:https://www.cnblogs.com/fanggege/p/11474934.html