CentOS 初体验十四:阿里云安装Gitlab  https://blog.csdn.net/zhaoyanjun6/article/details/79144175

网址:https://about.gitlab.com/install/#centos-7

非Unix操作系统(Windows)
GitLab是专为Unix操作系统开发的。 GitLab 不可 运行在Windows操作系统上,而且我们近期也没有考虑支持Windows。 你可以在Linux虚拟机上或者Docker上来安装GitLab。

硬件需求
安装使用 GitLab 需要至少 4GB 可用内存, 由于操作系统和其他正在运行的应用也会使用内存, 所以安装 GitLab 前一定要注意当前服务器至少有 4GB 的可用内存. 少于 4GB 内存会导致在reconfigure 的时候出现各种诡异的问题, 而且在使用过程中也经常会出现 500 错误.

具体细节要求,可以查看 Gitlab 中文文档

GitLab 安装
官方的安装教程:https://about.gitlab.com/installation/#centos-7

我开始学安装的时候,从网上找了很多教程,发现很多教程都是有问题的。有的教程是互相抄的,明明是错的,还复制粘贴,发现很多人写博客都不负责。我写博客就一个原则,写出的东西必须要自己验证过。

所以经验就是安装最好还是按照官方的教程来。

进入官方安装教程,我们发现 Gitlab 提供了很多不同的版本,如下

我的阿里云系统是 CentOS7 , 所以我直接选择 CentOS7 。然后下面就会出现安装的命令。

第一步
在系统防火墙中打开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
1
2
3
4
5
注意在执行第四条命令的时候,如下所示:

firewall-cmd --permanent --add-service=http
1
可能会报说 FirewallD is not running , 如下所示:

这个错误的意思是防火墙服务没有运行,要解决这个问题也很简单,就是把防火墙服务运行起来,启动防火墙命令如下:

//运行防火墙服务
systemctl start firewalld.service
1
2
第二步
安装Postfix 邮件通知服务,其实这一步是可以省略的,在 Gitlab 安装完成后还可以配置。安装命令如下:

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix
1
2
3
依次运行这些命令就可以了,没有坑。

第三步
安装 Gitlab 软件包,这个才是真正的主角。

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
1
这一步就是下载并安装 Gitlab 软件包,耐心等待就好。

第四步
配置 Gitlab 访问的域名,配置命令如下:

sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
1
上面命令的 http://gitlab.example.com 需要换成自己域名,如果你的云服务器没有绑定域名,可以用 公网ip 代替,比如 http://47.94.230.26 , 这个 域名/ip 以后可以在浏览器中访问 Gitlab 服务。运行上面的命令就会下载并安装一些服务,耐心等待就好。

下载完成后会自动安装,直至安装完成。下载的时间取决你云服务器的宽带速度,我是 1 M 带宽,下载完花了 10 分钟 , 安装花了 5 分钟,耐心等待便是。安装完成后,会出现如下的日志信息。


到这里就表示 GitLab 已经安装完成了。http://47.94.230.26 这个域名/ip 可以使用了, gitlab 的版本号是:gitlab-ee , 10.4.0 版本。

第五步
下面我们在浏览器中访问 http://47.94.230.26 , 就会看到入戏的画面。

需要设置初始密码,这里我们就用 zhaoyanjun 做密码, 连续输入两遍,然后点击下面的按钮。密码设置完成后,就会跳转到登录界面, 登录用户名默认是 root , 密码就是刚才设置的 zhaoyanjun 。


登录完成后,就可以看到如下的界面。

至此,Gitlab 已经安装完成了。

修改 ip
gitlab 本身采用 80 端口,如安装前服务器有占用 80,安装完访问会报错。需更改gitlab 的默认端口,比如我们将 Gitlab 的默认端口改为 8082 。

第一步
打开阿里云服务器防火墙的 8082 端口

//打开防火墙服务
systemctl start firewalld

//开启防火墙 8082 端口
firewall-cmd --zone=public --add-port=8082/tcp --permanent

//重启防火墙服务,让配置生效
systemctl restart firewalld
1
2
3
4
5
6
7
8
第二步
修改 Gitlab 默认端口配置
打开 /etc/gitlab/gitlab.rb 文件,找到 external_url 字段,如下图所示:

把 http://47.94.230.26 改为 http://47.94.230.26:8082


然后执行 gitlab-ctl reconfigure 让配置立即生效。
在浏览器中访问 http://47.94.230.26:8082 , 就可以看到 Gitlab 的页面了。

其他命令
//启动
sudo gitlab-ctl star

//停止
sudo gitlab-ctl stop

//重启
sudo gitlab-ctl restart

//使更改配置生效
sudo gitlab-ctl reconfigure