美文网首页
CentOS 7手把手教你搭建gitlab环境

CentOS 7手把手教你搭建gitlab环境

作者: Somnus_小凯 | 来源:发表于2020-09-11 23:21 被阅读0次

            在开篇之前梳理下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

            原因2、gitlab占用内存太多,导致服务器崩溃。尤其是使用阿里云服务器最容易出现502

             解决办法:默认情况下,主机的swap功能是没有启用的,解决办法是启动swap分区,就是我们上面启用的这里就不再过多解释了

           以上就是我们今天的教程,如果本文对你有所帮助,欢迎关注点赞,分享给您身边的朋友。您的鼓励就是对我的最大动力。

    相关文章

      网友评论

          本文标题:CentOS 7手把手教你搭建gitlab环境

          本文链接:https://www.haomeiwen.com/subject/rojiektx.html