在项目开发中都需要代码托管仓库来对开发中的代码进行管理,主流的两大代码托管仓库SVN(subversion)和GitHub。GitHub是很适合的开源项目代码托管,但在很多企业前期开发中需要建立私有仓库来管理代码,所以企业开发用的最多的还是gitLab。二者的区别这里不做过多讲解。感兴趣的朋友可以自己去查阅资料。
本文参考:
centOS7 安装gitlab 转 亲测实用
Centos 7搭建Gitlab服务器超详细
Centos7 搭建Gitlab服务器并配置项目全过程
特此感谢!
gitlab前要安装相关依赖。需要用到policycoreutils-python、openssh、postfix组件,
首先确认通过命令确认是否安装组件。
查看是否安装Openssh
$ rpm -qa|grep openssh
出现以下内容则证明已安装openssh
查看是否安装postfix
$ rpm -qa|grep postfix
出现以下内容则证明已安装成功
查看是否安装policycoreutils-python
$ rpm -qa|grep policycoreutils-python
如果使用命令发现并没有安装,则查看yum源中是否有相关rpm包,
使用命令查看是否有openssh的rpm包
$ yum list | grep openssh
$ yum -y install openssh.x86_64
$yum -y install openssh-server.x86_64
$yum -y install openssh-clients.x86_64
policycoreutils-python与postfix安装同上。如果yum源中也没有对应的rpm包,就只能先从网上下载好对应的rpm包后在安装。考虑到有很多依赖需要其他依赖的支持,从而引出一系列问题,本文推荐使用完整版centos7的yum源,这样安装起来需要的相关依赖也会自动下载,也为以后的中间件安装做准备。想要研究一下单独安装的朋友请自行查阅资料,不在本文进行讲解,后续可能会出一些比较典型的依赖离线安装,敬请期待!
基础版centos7.5的yum源某云地址(可满足绝大多数依赖需求):https://pan.baidu.com/s/1Pz4MSgLOQxqo8hoPHXJXtw
提取码:0h6a
gitlab下载地址:https://packages.gitlab.com/gitlab/gitlab-ce
觉得慢的可以使用清华大学开源软件镜像站:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
以git官方地址为例:
选择el/7版本
将下载好的gitlab安装包通过wincsp工具上传到目标服务器。
将ssh服务设置开机启动
$ systemctl enable sshd
启动ssh服务
$ systemctl start sshd
查看ssh服务状态
$ systemctl status sshd
active(running)表示ssh服务已启动
默认防火墙firewall是安装好并开启的,如需了解防火墙相关操作请参考此篇文章:centos7防火墙开启与关闭及开通策略
将http服务策略添加到防火墙
$ firewall-cmd --permanent --add-service=http
重启防火墙使之生效
$ systemctl reload firewalld
设置postfix开机启动
$ systemctl enable postfix
启动postfix服务
$ systemctl start postfix
查看postfix服务状态
$ systemctl status postfix
active(running)表示postfix服务已启动
做好以上准备后接下来就可以安装gitlab了,cd到上传gitlab安装包的目录中,使用rpm命令安装gitlab
$ rpm -i gitlab-ce-12.1.17-ce.0.el7.x86_64.rpm
$ vim /etc/gitlab/gitlab.rb
$ gitlab-ctl reconfigure
整个过程需要几分钟,我安装时用了6分25秒
使用命令重启gitlab
$ gitlab-ctl restart
重启后浏览器登录gitlab出现502报错
查阅资料很多安装的博主都说是权限问题,执行以下命令赋权
$ chmod -R 755 /var/log/gitlab
赋权后重置gitlab配置
$ gitlab-ctl reconfigure
发现还是不行,于是又找了度娘,很多博主都强调了一点,gitlab启动至少要4gb的运行内存,不然会出现各种奇怪的错误。
无奈个人电脑配置较低,安装虚拟机时只分配了1gb内存,偷偷找了公司测试环境的服务器按照步骤重新装了一遍,公司的虚拟机时16c/32g的配置,安装后登录发现还是502!我炸了,接着度娘,最后还是把我的问题找到了,安装过程中/etc/gitlab/gitlab.rb配置文件中unicorn[‘port’]这个配置默认使用的是8080端口,如果这个端口被占用了 是要修改端口的,查看日志
$ tail -400f /var/log/gitlab/unicorn/unicorn_stderr.log
果然是端口被占用
修改/etc/gitlab/gitlab.rb配置文件端口号
重置gitlab配置
$ gitlab-ctl reconfigure
使用浏览器登录发现成功了
第一次登录需要设置密码,在输入框输入自己将要设定的管理员密码,点击Change your password按钮
跳转到登录页面,输入用户名root,密码为你刚刚设置好的密码,点击登录
显示一下内容则说明登录成功
gitlab默认是英文界面,我们可以设置中文,首先点击右上角头像选择settings
然后选择左侧栏preferences
下拉找到language选择中文简体,点击save changes
重新登录即可显示中文
至此,gitlab的安装已经完成了,后续会讲到如何新建用户、新建仓库等一系列配置。