centos7离线安装gitLab

一:前言

在项目开发中都需要代码托管仓库来对开发中的代码进行管理,主流的两大代码托管仓库SVN(subversion)和GitHub。GitHub是很适合的开源项目代码托管,但在很多企业前期开发中需要建立私有仓库来管理代码,所以企业开发用的最多的还是gitLab。二者的区别这里不做过多讲解。感兴趣的朋友可以自己去查阅资料。
需要在服务器上搭建全新Gitlab服务器,完毕后在此记录全过程及遇到的问题。
注:我是在内网防火墙关闭状态下安装

之前尝试过直接yum安装,并使用清华大学的开源镜像站地 但服务器从该yum源下载实在太慢,并一直卡在安装,未成功;故手动下载rpm包安装。

 

环境说明

系统CentOS:CentOS7

IP: 192.168.203.133

二、相关依赖准备

操作步骤

1.查看Linux系统版本确认gitlab需要使用的安装包类型

[root@localhost proc]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

gitlab前要安装相关依赖。需要用到policycoreutils-python、openssh、postfix组件,
首先确认通过命令确认是否安装组件。

2.先安装相关依赖

yum -y install policycoreutils openssh-server openssh-clients postfix

3.启动postfix,并设置开机自启动

目的:支持gitlab邮件发送

systemctl enable postfix && systemctl start postfix


查看是否安装Openssh

$ rpm -qa|grep openssh

出现以下内容则证明已安装openssh

查看是否安装postfix

$ rpm -qa|grep postfix

出现以下内容则证明安装成功

查看是否安装policycoreutils-python

$ rpm -qa|grep policycoreutils-python

出现以下内容则证明安装成功

三、下载

4.下载并安装Gitlab社区版RPM包

gitlab下载地址:https://packages.gitlab.com/gitlab/gitlab-ce

以git官方地址为例:

选择el/7版本

  • EL7 软件包用于在Red Hat 7.x, CentOS 7.x, and CloudLinux 7.x的安装

EL是Red Hat Enterprise Linux的简写 
- EL6软件包用于在Red Hat 6.x, CentOS 6.x, and CloudLinux 6.x进行安装 
- EL5软件包用于在Red Hat 5.x, CentOS 5.x, CloudLinux 5.x的安装 
- EL7 软件包用于在Red Hat 7.x, CentOS 7.x, and CloudLinux 7.x的安装

点击下载 

四、安装

将下载好的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-13.11.1-ce.0.el7.x86_64.rpm

出现以下内容则说明安装成功了  等待大约有十几分钟

 

修改gitlab登录地址

$ vim /etc/gitlab/gitlab.rb

使用命令重置gitlab

$ gitlab-ctl reconfigure

整个过程需要几分钟,我安装时用了二十几分

使用命令重启gitlab

$ gitlab-ctl restart

重启后浏览器登录gitlab出现502报错

 

 

查阅资料很多安装的博主都说是权限问题,执行以下命令赋权(我是这个问题)

$ chmod -R 755 /var/log/gitlab

赋权后重置gitlab配置

$ gitlab-ctl reconfigure

端口不能被占用 

使用浏览器访问

 

第一次登录需要设置密码,在输入框输入自己将要设定的管理员密码,点击Change your password按钮

跳转到登录页面,输入用户名root,密码为你刚刚设置好的密码,点击登录

 

显示一下内容则说明登录成功

至此,gitlab的安装已经完成了,后续会讲到如何新建用户、新建仓库等一系列配置。

新建一个账号

用新账号登录时报

 Your account is pending approval from your GitLab administrator and hence blocked. Please contact your GitLab administrator if you think this is an error.

 

开始解决方案

参照

https://lightsail.blog.csdn.net/article/details/115254424
完成后想登录http://127.0.0.1/ 需要账号和密码登录,注册一个后登录报
Your account is pending approval from your GitLab administrator and hence blocked
错误,需要管理员账号初始化.
账号初始化参考下面博客
https://blog.csdn.net/hnmpf/article/details/80518460
初始化好后输入账号和密码就可以登录进去了。

sudo gitlab-rails console
在irb(main):001:0> 后面通过 u=User.where(id:1).first 来查找与切换账号(User.all 可以查看所有用户)
通过u.password='12345678'设置密码为12345678(这里的密码看自己喜欢):
通过u.password_confirmation='12345678' 再次确认密码
通过 u.save!进行保存(切记切记 后面的 ! return u.save!)
 

这是用了改密码的   不是这个问题  因安装的版本比较高 之前都是用地版本

解决方案  需要用root账号通过下

点击批准

再次用申请账号登录

可以登录成功 但是报Gitlab 422 the change you requested was rejected

Error 422 The change you requested was rejected on login

搜索前人经验,无果,尝试用其他浏览器登录,发现登录正常!后来回想是昨天清空了chrome浏览器缓存,而且登录页面一直没有关闭直接再登录引起的。关闭登录页面后过一段时间再次登录就OK了

登录成功

 

 

参照

https://blog.csdn.net/wangleiqqaaaaa/article/details/103575391?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.baidujs&dist_request_id=1332037.8014.16191413732941749&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.baidujs

https://blog.csdn.net/lingdi2000/article/details/103174769

 

 

https://www.jianshu.com/p/d03a08dd28a2  未成功

https://lightsail.blog.csdn.net/article/details/115254424

https://blog.csdn.net/wxb880114/article/details/106349993

 

使用参照

版本不同略有差异

https://blog.csdn.net/qq_31237581/article/details/102639749

 

 

 

 

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐