安装依赖
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
systemctl start postfix systemctl status postfix.service
Yum安装
使用这种方式安装的gitlab永远都是最新版的,也会比较慢
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash yum -y install gitlab-ce
rpm安装
这里采用了 清华大学开源软件镜像站 下载并安装(速度快)
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.6.1-ce.0.el7.x86_64.rpm rpm -ivh gitlab-ce-12.6.1-ce.0.el7.x86_64.rpm
这里说一下rpm安装gitlab安装后的目录和文件的作用:
/opt/gitlab/ # gitlab的程序安装目录 /etc/gitlab/gitlab.rb # gitlab的配置文件 /var/opt/gitlab # gitlab目录数据目录 /var/opt/gitlab/git-data # 存放仓库数据 /var/log/gitlab/ # 日志地址 /var/opt/gitlab/ # 各服务地址
gitlab配置
安装完成后,修改gitlab的配置文件(在/etc/gitlab/gitlab.rb)
vim /etc/gitlab/gitlab.rb
一、配置外网访问
更改URL地址为本地IP地址: 原参数: external_url 'http://gitlab.example.com' 改为: external_url 'http://192.168.192.131' 配置gitlab并启动(配置完成会自动启动)
二、配置端口(80和8080端口)
1、如果没有运行gitlab-ctl reconfigure,则直接在/etc/gitlab/gitlab.rb中配置
unicorn['listen'] = '127.0.0.1' unicorn默认监控ip unicorn['port'] = 8080 unicorn默认使用端口,如冲突则可修改成其余端口。
nginx['listen_port'] = 80 nginx默认使用端口,如冲突则可修改成其余端口
2、如果已经运行gitlab-ctl reconfigure
vim /var/opt/gitlab/gitlab-rails/etc/unicorn.rb
/var/opt/gitlab/nginx/conf/gitlab-http.conf
3、如果已经运行gitlab-ctl reconfigure,也可以修改/etc/gitlab/gitlab.rb后再运行gitlab-ctl reconfigure覆盖配置
gitlab管理命令
cat /opt/gitlab/embedded/service/gitlab-rails/VERSION #查看gitlab版本 gitlab-ctl reconfigure # 更改配置文件后需重新配置 gitlab-ctl status # 查看目前gitlab所有服务运维状态 gitlab-ctl stop # 停止gitlab服务 gitlab-ctl stop nginx # 单独停止某个服务 gitlab-ctl tail # 查看所有服务的日志
giitlab汉化
下载汉化补丁包
git clone https://gitlab.com/xhang/gitlab.git
查看所有汉化补丁包的分支(在gitlab补丁包中执行)
git branch -a 查看所有汉化补丁包分支 git branch 查看最新汉化补丁包分支
查看版本信息
cat gitlab/VERSION 查看汉化补丁包最新版本 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 查看当前安装版本
比较汉化标签和原标签,导出 patch 用的 diff 文件到/tmp下
git diff origin/10-7-stable origin/10-7-stable-zh > /tmp/10.7.diff
git diff v11.5.6 v11.5.6-zh > ../11.5.6-zh.diff
将11.5.6-zh.diff作为补丁更新到gitlab中
温馨提示: 这里回车后,会提示是否要覆盖文件,一路回车就行
yum -y install patch patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < /root/11.5.6-zh.diff
重新启动(启动后稍等1-2分钟在访问web,不然会出现502的错误)
gitlab-ctl restart
访问web页面时出现502错误
gitlab-ctl start gitlab-ctl reconfigure #这个错误饱受诟病,在启动gitlab的时候执行reconfigure之后就可以了