===============================================
2018-04-26 08:56:48
===============================================
安装全程选择的用户为root
参考文章:https://www.cnblogs.com/straycats/p/7637373.html
此文章基本为粽先生上篇文章的转载,有兴趣的可以看一下粽先生的原文章
一、环境准备
操作系统:centos7(系统纯净环境,其他服务,如nginx,ssh等常见服务均未安装,建议使用系统纯净环境安装gitlab)
其他硬件如CPU,内存根据实际使用人数相应修改即可
1.1 更换阿里yum(个人习惯)
步骤:
1)下载wget
yum install -y wget
2)备份默认的yum
mv /etc/yum.repos.d /etc/yum.repos.d.backup
3)设置新的yum目录
mkdir /etc/yum.repos.d
4)下载阿里yum配置到该目录中
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
5)重建缓存
yum clean all yum makecache
6)升级所有包(改变软件设置和系统设置,系统版本内核都升级,故需要几分钟耐心等待)
yum update -y
1.2 安装vim(个人习惯)
yum install -y vim
二、获取gitlab汉化包(要部署非汉化版,可以跳过这一块内容)
说明:gitlab中文社区版的项目,v7-v8.8是由Larry Li发起的“GitLab 中文社区版项目”(https://gitlab.com/larryli/gitlab),从 v8.9 之后,@xhang 开始继续该汉化项目(https://gitlab.com/xhang/gitlab)。
2.1 安装git
yum install -y git
2.2 克隆获取汉化版本库
下载最新的汉化包
git clone https://gitlab.com/xhang/gitlab.git
如果是要下载老版本的汉化包,需要加上老版本的分支,比如今天已经是10.7.0,我依旧想下载10.6.4,可以运行下面的语句
git clone https://gitlab.com/xhang/gitlab.git -b v10.6.4-zh
2.3 查看该汉化补丁的版本
cat gitlab/VERSION
注:我安装的版本是10.6.4,目前最新的汉化版本就是10.6.4
三、部署社区版gitlab
3.1 安装gitlab的依赖项
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
3.2 启动postfix,并设置为开机启动
systemctl start postfix systemctl enable postfix
3.3 设置防火墙
firewall-cmd --add-service=http --permanent firewall-cmd --reload
注:本人安装的时候是把防火墙完全关闭的
3.4 获取gitlab的rpm包
途径1:通过清华开源镜像站
查看清华开源镜像站,有我需要的10.6.4的rpm包。
获取rpm包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.6.4-ce.0.el7.x86_64.rpm
注:不建议使用wget方式,速度较慢,还可能出现卡顿现象。可以网页下载,然后上传到系统
途径2:从官方获取RPM包后上传到/root目录下
官方下载:https://packages.gitlab.com/gitlab/gitlab-ce/
因为要在centos7上安装版本10.6.4的gitlab,故找到gitlab-ce-10.6.4-ce.0.el7.x86_64.rpm下载到本地后,通过Bitvise SSH Client工具将rpm包上传到gitlab虚拟机的/root目录下。
说明:从下载速度和方便程度来说,走清华的镜像站的方式更优,但是可能版本没有最新版本,故在增补“途径2”获取最新的安装包。
注:官网下载本人没有使用过这种方法
3.5 安装rpm包
rpm -i gitlab-ce-10.6.4-ce.0.el7.x86_64.rpm
根据提示,继续执行指令配置gitlab。
gitlab-ctl reconfigure
3.6 修改配置文件gitlab.rb
vim /etc/gitlab/gitlab.rb
将external_url变量的地址修改为gitlab所在centos的ip地址。(途中IP即为实际的系统IP地址)。
因为修改了配置文件,故需要重新加载配置内容。
gitlab-ctl reconfiguregitlab-ctl restart
3.7 查看gitlab版本
head -1 /opt/gitlab/version-manifest.txt
四、覆盖汉化包
4.1 停止gitlab服务
gitlab-ctl stop
4.2 切换到gitlab汉化包所在的目录(即步骤二获取的汉化版gitlab)
cd /root/gitlab
4.3 比较汉化标签和原标签,导出 patch 用的 diff 文件到/root下
git diff v10.6.4 v10.6.4-zh > ../10.6.4-zh.diff
4.4 回到/root目录
cd
4.5 将10.6.4-zh.diff作为补丁更新到gitlab中
yum install patch -ypatch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 10.6.4-zh.diff
4.6 启动gitlab
gitlab-ctl start systemctl enable gitlab-runsvdir.service #设置开机启动
4.7 重新配置gitlab
gitlab-ctl reconfigure
五、设置管理员密码
管理员账号登录的用户名:root
(虽然登录后管理员的用户名为Administrator,但是实际登录的用户名是root)
方法一:网页方式
浏览器访问gitlab所在的ip,输入密码后点击 “Change your password”(如果进行汉化,点击“修改密码”)。
方法二:指令方式
gitlab-rails console production
稍等一会后会出现
irb(main):001:0> user = User.where(id: 1).first // id为1的是超级管理员irb(main):002:0>user.password = 'yourpassword' // 密码必须至少8个字符irb(main):003:0>user.save! // 如没有问题 返回trueexit // 退出