GitLab 简介

GitLab 是由 GitLabInc.开发,使用 MIT 许可证的基于网络的 Git 仓库管理工具,且具有wiki 和 issue 跟踪功能。使用 Git 作为代码管理工具,并在此基础上搭建起来的 web 服务。
GitLab 由乌克兰程序员 DmitriyZaporozhets 和 ValerySizov 开发,它使用 Ruby 语言写成。后来,一些部分用 Go 语言重写。截止 2018 年 5 月,该公司约有 290 名团队成员,以及 2000 多名开源贡献者。
GitLab 被 IBMSonyJülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX 等组织使用。

安装前的准备工作

准备一个CentOS7以上的服务器,要求内存 4G,磁盘 50G。
开放GitLab自定义的端口(gitlab默认的端口是80,后面会说怎么修改端口)
服务器上创建一个存放安装包的目录

#开放端口
firewall-cmd --zone=public --add-port=[自定义端口]/tcp --permanent
#重启防火墙
firewall-cmd --reload
#创建安装包存放的目录
mkdir opt/module

下载GitLab

gitlab官网:https://about.gitlab.com/ 下载gitlab安装包
找不到官方下载位置的我给大家准备了一个安装包
链接:https://pan.baidu.com/s/1lQuVNhikfs0bv17DrsqguA
提取码:ckcl

注意:安装包有两种一个是 gitlab- ce社区版(免费),另外一个是 gitlab- ee企业版(收费) 我们选择ce社区版就够用
下载后将rpm包上传到服务器 opt/module下,之后我们编写一个脚本


创建脚本

#创建脚本
vim gitlab-install.sh

编写脚本内容。

#注意:如果不是root用户每行脚本都需要加 sudo
 rpm -ivh /opt/module/gitlab-ce-13.10.2-ce.0.el7.x86_64.rpm
 yum install -y curl policycoreutils-python openssh-server cronie
 lokkit -s http -s ssh
 yum install -y postfix
 service postfix start
 chkconfig postfix on
 curl https://packages.gitlab.com/install/repositories/gitlab/gitlabce/script.rpm.sh | sudo bash
 EXTERNAL_URL="http://gitlab.example.com" yum -y install gitlabce

为脚本添加执行权限

#为脚本添加执行权限
chmod +x gitlab-install.sh

执行脚本,安装gitlab

#执行脚本
./gitlab-install.sh

设置gitlab的端口,共有两种方式:一个是修改gitlab.rb文件,还有一个是修改gitlab组件的配置文件,我选用的是修改gitlab.rb文件,切记要修改gitlab.rb文件,再去运行初始化命令。

#找到自己gitlab安装的位置打开配置文件
cd /opt/gitlab/etc  #这仅仅是我的安装位置,要找到自己的
#打开配置文件
vim gitlab.rb

找到external_url,在这设置自己的IP和端口

gitlab默认用户名 gitlab用户名怎么设置_centos


初始化gitlab。这里耗费的时间会比较长,要耐心等待。

#初始化gitlab
gitlab-ctl reconfigure

启动gitlab服务

#启动gitlab服务
gitlab-ctl start
#如果需要停止gitlab
gitlab-ctl stop

启动成功,如下图所示。

gitlab默认用户名 gitlab用户名怎么设置_linux_02


访问gitlab,看到下图界面gitlab搭建成功!

gitlab默认用户名 gitlab用户名怎么设置_gitlab默认用户名_03

首次进入gitlab

最开始访问gitlab的页面会让你设置密码

设置密码:大写、特殊符号、数字都要包含且满八位
默认用户名root

设置好密码后登录gitlab,是不是看到了熟悉的界面

gitlab默认用户名 gitlab用户名怎么设置_centos_04

如果访问出现502,可能是gitlab正在启动中,稍微等等它