在开篇之前梳理下gitlab遇到的问题,最近项目代码管理,gitlab安装完成之后发现访问出现502,虽然解决了,觉得还是有必要把遇到的记录下来,所谓,好记性不如烂笔头,踩坑多了就是成长。
什么是GitLab?
GitLab是由GitLabInc.开发,使用MIT许可证的基于网络的Git仓库管理工具,且具有wiki和issue跟踪功能。使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
GitLab由乌克兰程序员DmitriyZaporozhets和ValerySizov开发,它使用Ruby语言写成。后来,一些部分用Go语言重写。截止2018年5月,该公司约有290名团队成员,以及2000多名开源贡献者。GitLab被IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等组织使用。
在我们开始之前我们先来更新下我们系统,这个可有可无,我这个是最小安装
一,更新系统
yum update -y
这个执行中间可能会需要5到10分钟左右,根据自己的网速快慢来决定执行的快慢,大家只需要耐心等待下就好了
二,安装sshd
2.1 安装sshd依赖
yum install -y curl policycoreutils-python openssh-server
2.2 接下来我们启用并启动 sshd:
systemctl enable sshd
systemctl start sshd
2.3 接下来我们配置下防火墙:
打开 /etc/sysctl.conf 文件,在文件最后添加新的一行
net.ipv4.ip_forward = 1
我们只需要sysctl.conf在最后添加一行,按下esc 加:wq 保存即可
2.4 启用并启动防火墙:
systemctl enable firewalld
systemctl start firewalld
这里由于是演示,我这里就把http放行
firewall-cmd --permanent --add-service=http
2.5 重启防火墙:
systemctl reload firewalld
以上操作步骤:
[图片上传失败...(image-3f3611-1599837695676)]
三,接下来我们在安装 postfix
GitLab 需要使用 postfix 来发送邮件。当然,也可以使用 SMTP 服务器。
3.1 安装postfix
yum install -y postfix
打开 /etc/postfix/main.cf 文件,在第 119 行附近找到 inet_protocols = all,将 all 改为 ipv4
inet_protocols = ipv4
3.2 启用并启动 postfix:
systemctl enable postfix
systemctl start postfix
3.3 配置 swap 交换分区
由于 GitLab 较为消耗资源,我们需要先创建交换分区,以降低物理内存的压力。 在实际生产环境中,如果服务器配置够高,则不必配置交换分区。
3.4 新建 2 GB 大小的交换分区:
dd if=/dev/zero of=/root/swapfile bs=1M count=2048
3.5 接下来我们对其格式化
mkswap /root/swapfile
swapon /root/swapfile
添加自启用。打开 /etc/fstab 文件,在文件最后添加新的一行
/root/swapfile swap swap defaults 0 0
四,接下里我们安装git
4.1 安装 GitLab
将软件源修改为国内源 由于网络环境的原因,将 repo 源修改为清华大学 。
在 /etc/yum.repos.d 目录下新建 gitlab-ce.repo 文件并保存。内容如下:
[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1
4.2 修改完 yum 源,因此先重新生成缓存:
(此步骤执行时间较长,一般需要 3~5 分钟左右,请耐心等待)
yum makecache
4.3 安装 GitLab:
(此步骤执行时间较长,一般需要 3~5 分钟左右,请耐心等待)
yum install -y gitlab-ce
五, 初始化 GitLab
5.1 配置 GitLab 的域名(非必需)
打开 /etc/gitlab/gitlab.rb 文件,在第 13 行附近找到 external_url 'http://gitlab.example.com',将单引号中的内容改为自己的域名(带上协议头,末尾无斜杠)
external_url 'http://119.29.102.85'
5.2 初始化 GitLab ==特别重要!==
使用如下命令初始化 GitLab:
(此步骤执行时间较长,一般需要 5~10 分钟左右,请耐心等待)
sudo gitlab-ctl reconfigure
当看到这个就说明我们gitlab已经安装成功了。
5.3 启动成功之后我们通过浏览器访问下
当我们看到进入我们就可以对我们代码进行管理了。
回到我们开始的话题,有些朋友安装成功后看到的界面可能是这个
这种情况出现的原因:
原因1、8080端口被tomcat占用
解决办法:更换端口
安装tomcat默认的是8080端口,netstat -ntpl查看端口情况
[图片上传失败...(image-9a8962-1599837695676)]
最简单的方式我们就是把8080端口kill掉,然后改下端口号
为了避免8080端口冲突问题,可以修改下的默认端口,vim打开/etc/gitlab/gitlab.rb配置文件
执行重新启动
sudo gitlab-ctl reconfigure
sudo gitlab-ctl stop
sudo gitlab-ctl start
相关操作
启动服务:gitlab -ctl start
查看状态:gitlab -ctl status
停掉服务:gitlab -ctl stop
重启服务:gitlab -ctl restart
让配置生效:gitlab -ctl reconfigure