Centos7搭建Gitlab EE

这里我会说一下搭建的步骤以及遇到的问题。

官方网址

gitlab 网址: Gitlab

gitlab 安装过程: 官网安装过程(English)

以下我简单翻译一遍在Centos7上的安装步骤以及后续自己测试的过程

在Centos7上安装Gitlab
  1. 安装以及配置必要的依赖
    以下的命令是打开http和ssh的通过系统防火墙的权限
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld

然后安装Postfix这样的一款接受通知邮件的软件,如果你想用一些外部的发通知邮件的方案请跳过此步骤,并且在安装完成GItlab后配置an external SMTP server. postfix其实就是发邮件的软件,在gitlab里面配置这个就是为了可以实时关注gitlab上的项目情况,这里我就不细细说了,可以百度一下postfix去了解一下详情。

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

During Postfix installation a configuration screen may appear. Select ‘Internet Site’ and press enter. Use your server’s external DNS for ‘mail name’ and press enter. If additional screens appear, continue to press enter to accept the defaults.

  1. 添加Gitlab资源库以及安装这个资源库
    命令如下所示
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

下一步,安装这个GItlab包,这里的"http://gitlab.example.com"可以改成自己的URL,如果是本地的可以直接用http://127…这样的格式就可以了,大约一个多G,需要一些时间下载。

sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
  1. 访问搭建的Gitlab
    搭建完成后就可以访问了,但是我在访问的时候一直访问不上,之后等了很长一段时间后再一次访问竟然就可以了,可能是配置低,启动服务较慢。启动后的界面如下所示:

这里就是初始化密码了,设置后用户名是root,直接就可以登录上去了,gitlab就算是搭建成功了。

遇到的问题
  1. 搭建完成后再Linux中可以用 curl 127.0.0.1访问到gitlab,但是远程无法访问:
    这种情况多半是因为Centos的防火墙没有开放端口号,在Centos7中,设置防火墙的命令如下所示:
firewall-cmd --zone=public --add-port=80/tcp --permanent
--zone #作用域
--add-port=80/tcp  #添加端口,格式为:端口/通讯协议
--permanent   #永久生效,没有此参数重启后失效

设置完之后需要重启一下防火墙或者关闭再打开防火墙

systemctl stop firewalld.service  
systemctl start firewalld.service  
firewall-cmd  --reload

查看防火墙是否开启该端口的命令如下,yes表示已经开启

firewall-cmd --zone=public --query-port=80/tcp
  1. 暂时没想到其他问题,等待完善…