各位好啊,我是会编程的明杰,作为java开发者,在团队开发中,一般都是需要使用git及git仓库来管理我们的代码的,这非常方便。我以前在小公司的时候,基本都是一个人开发一个项目,所以也没有怎么接触过git,后来去了大一点的公司,才第一次接触。这其中使用的比较多的仓库就是gitlab,但之前都是别人帮我搭好的,最近为了研究下jenkins自动化部署,所以得先安装下git仓库,这里首选gitlab,当然在这之前,我们可能还需要安装一个centos系统,这个可以参考我之前的文章:如何用VMWARE创建一个Linux虚拟机
话不多说,直接开始安装吧。
安装sshd
首选,先安装下sshd依赖,执行如下命令:
yum install -y curl policycoreutils-python openssh-server
按照正常的设想,应该是等待安装完成,但却报错了,如图:
看样子,是centos7里面默认的yum源镜像有点问题,网上查了一下,找到了解决方法,大致的原因是yum配置文件里指向的域名识别不了;需要重新设置下DNS指向。
解决之后,再次执行上面的命令,就可以成功安装了。
安装好之后,需要启用和启动sshd服务,执行命令:
systemctl enable sshdsystemctl start sshd
设置防火墙
打开 /etc/sysctl.conf 文件,在文件最后添加新的一行。
输入如下文本:
net.ipv4.ip_forward = 1
这样,就配置好了防火墙。这样设置的作用是,当linux主机有多个网卡时,一个网卡收到的信息就可以传递给其他网卡了,就是数据可以进行转发。
然后,启动防火墙:
systemctl enable firewalldsystemctl start firewalld
最后,将防火墙重启,使防火墙设置生效。
systemctl reload firewalld
安装postfix
由于gitlab是需要使用postfix来作为邮件发送服务的,所以,还得安装下这个服务。
直接输入命令即可安装,在确认安装环节,输入【y】即可:
yum install postfix
安装完成之后,打开/etc/postfix/main.cf 文件,找到inet_protocols = all,将 all 改为 ipv4。
然后,启动postfix,输入命令:
systemctl enable postfix systemctl start postfix
安装gitlab
终于到了安装gitlab的时刻了。
首先,由于网络原因,我们需要更改下镜像源地址。在/etc/yum.repos.d 目录下新建 gitlab-ce.repo 文件,并在里面输入如下内容:
[gitlab-ce]name=Gitlab CE Repositorybaseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/gpgcheck=0enabled=1
然后保存文件,这样把该镜像源的地址设置成了清华大学的,下载的时候会比较快。
保存好之后,需要重新生成环境,执行如下命令:
yum makecache
但是,这里,我又遇到了一个问题,如图:
发生这个问题的原因比较明显,就是我的系统上,/var这个挂载点空间不足,本身是由于我这个挂载点空间就不大,然后安装gitlab又比较耗费空间,所以,就报错了。无奈,又网上搜了一圈。
最终找到了将根目录下的空间分配一部分给其他挂载点的方法,成功解决这个问题。大家如果也遇到这个问题,
然后,我们就可以正式安装gitlab了,执行如下命令:
yum install -y gitlab-ce
这个安装起来时间较长,需要耐心等待一下,大概10分钟左右。
当看到这个画面的时候,就说明gitlab已经基本安装好了。
运行gitlab
首先,我们需要配置一下GitLab的域名,当然这个不是必须的,但建议配置下,不然到时候访问gitlab的时候,名字不太好记。
打开/etc/gitlab/gitlab.rb文件,找到external_url 这个选项,改成改机器的ip或者域名,如图:
然后,就是初始化gitlab,这是必须的,时间也比较长,耐心等待下吧。
输入命令:
gitlab-ctl reconfigure
当出现如图的画面时,就已经配置完成了。
这里说明下常用的命令:
sudo gitlab-ctl reconfiguresudo gitlab-ctl stopsudo gitlab-ctl start
分别是初始化gitlab,关闭gitlab,启动gitlab。现在我们启动下gitlab。但这时,问题又出现了。出现了502界面,并不是我们想要的登录界面。