Linux安装GitLab

一、摘要        

        公司或组织经常用Gitlab做为代码仓库,这里我也安装下Gitlab,为后面CI/CD集成打下基础,官方安装地址:https://about.gitlab.com/install/#centos-7。不过官网很多人说比较坑,这里就不用官方方法安装了。

二、安装步骤

2.1 yum安装

        2.1.1 配置yum源

        运行命令:vi /etc/yum.repos.d/gitlab-ce.repo

        复制如下内容到gitlab-ce.repo文件中:

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

        按esc,再按:wq保存文件。

        2.2.2 更新yum缓存

        运行命令:sudo yum makecache

Linux安装GitLab_第1张图片

        这一步会将yum源里配置的docker-ce安装包下载下来,这里可能会报错,也可能会卡住,只要换个能连接的网速较快的gitlab-ce的yum地址即可。

        2.2.3 安装GitLab

        运行命令:yum install gitlab-ce

                          gitlab-ctl reconfigure

2.2 rpm安装

        这里采用rpm离线安装方式安装。

        2.2.1 下载rpm安装包

        下载地址为:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

        这里选取版本:gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm,理论应该是越新越好,毕竟越新修复bug多,兼容性也更强,功能更强大,但这里和公司目前的gitlab保持一致,用12.3.5版本。

        下载好后,将rpm包复制到linux的/opt/gitlab目录下

Linux安装GitLab_第2张图片

        2.2.2 安装gitlab-ce依赖

        gitlab运行需要依赖policycoreutils-python和openssh-server,所以需要安装并设置自动启动 ,运行命令如下:

        yum -y install policycoreutils-python openssh-server

        systemctl enable sshd

        systemctl start sshd

        2.2.3 安装gitlab-ce

        运行命令如下:

        cd /opt/gitlab

        rpm -Uvh gitlab-ce-12.3.5-ce.0.el7.x86_64.rpm

        gitlab-ctl reconfigure

三、配置GitLab

3.1 配置文件目录

        gitlab默认安装后各目录如下:

gitlab组件日志路径:/var/log/gitlab
gitlab配置路径:/etc/gitlab/  路径下有gitlab.rb配置文件
应用代码和组件依赖程序:/opt/gitlab
各个组件存储路径: /var/opt/gitlab/
仓库默认存储路径   /var/opt/gitlab/git-data/repositories
版本文件备份路径:/var/opt/gitlab/backups/
nginx安装路径:/var/opt/gitlab/nginx/
redis安装路径:/var/opt/gitlab/redis

3.2 修改配置

        3.2.1 修改默认端口

        运行命令:vi /etc/gitlab/gitlab.rb,将external_url的地址和端口写成你想要的IP和端口号,如下:        Linux安装GitLab_第3张图片

四、启动

        启动:gitlab-ctl start(若改了配置需要先运行:gitlab-ctl reconfigure)

        重启:gitlab-ctl restart

        关闭:gitlab-ctl stop

        访问 配置的ip和端口即可。默认配置端口是80,第一次登录需要直接改密码:

Linux安装GitLab_第4张图片

 Linux安装GitLab_第5张图片

        

五、问题排查

问题一:502   Whoops, GitLab is taking too much time to respond.

Linux安装GitLab_第6张图片

这里超时了,即无法获取git服务数据,这里可能是哪个服务因为端口冲突没起来。最容易冲突的是puma或unicorn,后期版本貌似是默认只启用puma。它的端口默认是8080。

Linux安装GitLab_第7张图片

gitlab-ctl stop执行后还有别的服务占用8080,如下:

这里就改puma的端口:

Linux安装GitLab_第8张图片

 再运行:gitlab-ctl stop、gitlab-ctl reconfigure、gitlab-ctl start

启动后要等个1分钟甚至更久,再刷新页面就可以看到登录页了。当然,也可以用gitlab-ctl tail puma看日志或者改动的8081端口有服务占用则就可以刷新页面了。

Linux安装GitLab_第9张图片

         

你可能感兴趣的:(版本控制,gitlab)