如何在CentOS 7上搭建GitLab服务器(完整指南)

 更新时间:2025年08月06日 11:10:52   作者:工作log  
本文详解在CentOS7上搭建GitLab企业级服务器的完整流程,包括环境准备、安装配置、关键设置、故障排查及实操截图,提供国内镜像加速和常见错误解决方案,感兴趣的朋友一起看看吧

前言

GitLab是一个强大的DevOps平台,集代码托管、CI/CD、项目管理于一体。本文将详细介绍在CentOS 7上搭建GitLab企业级服务器的完整流程,包含关键配置和避坑指南。

一、环境准备

1.1 系统要求

  • 最低配置
    • 4核CPU / 4GB内存(推荐8GB+)
    • 50GB+磁盘空间
    • CentOS 7.6+(64位)

⚠️ 注意:内存不足会导致GitLab运行缓慢甚至崩溃!

服务器配置参考

场景CPU内存存储
小型团队4核8GB100GB
中型企业8核16GB500GB
大型部署16核32GB1TB+

1.2基础服务配置

# 安装SSH服务、curl工具和系统管理工具
sudo yum install -y curl policycoreutils-python openssh-server
# 设置SSH服务开机自启动
sudo systemctl enable sshd
# 启动SSH服务(允许远程连接)
sudo systemctl start sshd
# 安装防火墙管理工具
sudo yum install firewalld systemd -y
# 启动防火墙服务
sudo systemctl start firewalld
# 添加HTTP服务到防火墙(--permanent表示永久生效)
sudo firewall-cmd --permanent --add-service=http
# 添加HTTPS服务到防火墙
sudo firewall-cmd --permanent --add-service=https
# 添加SSH服务到防火墙
sudo firewall-cmd --permanent --add-service=ssh
# 重新加载防火墙配置(使更改生效)
sudo systemctl reload firewalld
# 安装邮件服务(用于GitLab通知)
sudo yum install postfix -y
# 设置邮件服务开机自启动
sudo systemctl enable postfix
# 启动邮件服务
sudo systemctl start postfix
# 安装vim编辑器(配置文件修改)
sudo yum install -y vim
# 安装wget下载工具(获取安装包)
sudo yum install -y wget

二、GitLab安装与配置

2.1 使用国内镜像加速安装

# 下载清华镜像站提供的GitLab RPM包(版本14.3.2)
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm
# 使用RPM包管理器安装GitLab
rpm -i gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm

2.2 关键配置修改

# 编辑GitLab主配置文件
vim /etc/gitlab/gitlab.rb

进入gitlab.rb文件后,查找内容 

# 修改以下配置项(示例):
#external_url ‘http://IP:Port'
#external_url ‘http://域名'
external_url 'http://your-server-ip:1000'  # 使用自定义端口 

gitlab_rails['smtp_enable'] = true         # 启用邮件发送(可选)
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"  # 邮件服务器地址(可选)
gitlab_rails['time_zone'] = 'Asia/Shanghai' # 设置时区(可选)

2.3 防火墙与初始化

# 添加自定义端口到防火墙(示例端口1000)
firewall-cmd --permanent --add-port=1000/tcp
# 重新加载防火墙配置
sudo systemctl reload firewalld
# 重新配置GitLab(应用配置更改)
gitlab-ctl reconfigure
# 重启GitLab服务
gitlab-ctl restart

2.4 密码重置方法

# 进入GitLab控制台
sudo gitlab-rails console -e production
# 执行密码重置命令序列
user = User.where(id: 1).first  # 获取root用户
user.password = 'YourNewPassword123!'  # 设置新密码
user.password_confirmation = 'YourNewPassword123!'  # 确认密码
user.save!  # 保存更改
exit  # 退出

2.5重启Gitlab

# 重启GitLab服务
gitlab-ctl restart

三、故障排除指南(附解决方案)

3.1 502错误(最常见)

原因分析

  • 内存不足(GitLab至少需要4GB)
  • Unicorn服务崩溃

3.2 422页面错误

原因分析

  • CSRF令牌验证失败
  • 代理服务器配置错误

四 GitLab服务管理命令

# 启动所有服务
gitlab-ctl start
# 停止所有服务
gitlab-ctl stop
# 重启所有服务
gitlab-ctl restart
# 查看服务状态
gitlab-ctl status
# 查看实时日志(Nginx)
gitlab-ctl tail nginx
# 检查系统配置
gitlab-rake gitlab:check SANITIZE=true

五 实操截图

1.安装SSH服务、curl工具和系统管理工具

# 安装SSH服务、curl工具和系统管理工具
sudo yum install -y curl policycoreutils-python openssh-server

安装成功会出现如下图所示

2.设置SSH服务

# 设置SSH服务开机自启动
sudo systemctl enable sshd
# 启动SSH服务(允许远程连接)
sudo systemctl start sshd
# 安装防火墙管理工具
sudo yum install firewalld systemd -y

安装成功会出现如下图所示

# 启动防火墙服务
sudo systemctl start firewalld
# 添加HTTP服务到防火墙(--permanent表示永久生效)
sudo firewall-cmd --permanent --add-service=http
# 添加HTTPS服务到防火墙
sudo firewall-cmd --permanent --add-service=https
# 添加SSH服务到防火墙
sudo firewall-cmd --permanent --add-service=ssh
# 重新加载防火墙配置(使更改生效)
sudo systemctl reload firewalld 

3.安装Postfix

# 安装邮件服务(用于GitLab通知)
sudo yum install postfix -y 

# 设置邮件服务开机自启动
sudo systemctl enable postfix
# 启动邮件服务
sudo systemctl start postfix 

4.安装vim编辑器和wget下载器

# 安装vim编辑器(配置文件修改)
sudo yum install -y vim
# 安装wget下载工具(获取安装包)
sudo yum install -y wget 

5.添加GitLab镜像源并安装gitlab

# 下载清华镜像站提供的GitLab RPM包(版本14.3.2)
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm
# 使用RPM包管理器安装GitLab
rpm -i gitlab-ce-14.3.2-ce.0.el7.x86_64.rpm

6.关键配置修改

  • # 编辑GitLab主配置文件

  • vim /etc/gitlab/gitlab.rb

  • # 修改以下配置项(示例):

  • #external_url ‘http://IP:Port’

  • #external_url ‘http://域名’

  • external_url 'http://your-server-ip:1000' # 使用自定义端口

7.防火墙与初始化

 # 添加自定义端口到防火墙(示例端口1000)
firewall-cmd --permanent --add-port=1000/tcp
# 重新加载防火墙配置
sudo systemctl reload firewalld
# 重新配置GitLab(应用配置更改) 重置过程需要一些时间等待
gitlab-ctl reconfigure

 重置成功后,最后几行的信息如下图所示 

8.重启GitLab服务

     # 重启GitLab服务

  1. gitlab-ctl restart

9.访问GitLab页面

访问方式:IP地址+端口号

访问地址是来源

#external_url ‘http://IP:Port’
#external_url ‘http://域名’
external_url 'http://your-server-ip:1000'  # 使用自定义端口

10.密码重置方法

# 进入GitLab控制台
sudo gitlab-rails console -e production
# 执行密码重置命令序列
user = User.where(id: 1).first  # 获取root用户
user.password = 'dafu200..'  # 设置新密码
user.password_confirmation = 'dafu200..'  # 确认密码
user.save!  # 保存更改
exit  # 退出

11.重置完成登录

12.创建项目仓库

完美结束,接下来创建分支

到此这篇关于如何在CentOS 7上搭建GitLab服务器(完整指南)的文章就介绍到这了,更多相关centos GitLab服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Linux运维基础httpd静态网页教程

    Linux运维基础httpd静态网页教程

    这篇文章主要介绍了Linux运维基础中怎样制作httpd静态网页,附含源码及图片示例,有需要的朋友可以借鉴参考下,希望可以有所帮助,祝进步
    2021-09-09
  • CentOS系统下前后端项目部署的操作指南

    CentOS系统下前后端项目部署的操作指南

    本文详细介绍了CentOS系统下前后端项目部署的全流程,涵盖系统准备、环境配置、服务管理、日志处理、网络诊断、资源监控、自动化部署及安全加固,提供常见问题的解决方案和操作技巧,需要的朋友可以参考下
    2025-07-07
  • Linux 下dmidecode查看内存条数的命令介绍

    Linux 下dmidecode查看内存条数的命令介绍

    下面小编就为大家带来一篇Linux 下dmidecode查看内存条数的命令介绍。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • Linux中配置双机SSH信任 操作说明

    Linux中配置双机SSH信任 操作说明

    本篇文章小编为大家介绍,Linux中配置双机SSH信任 操作说明。需要的朋友参考下
    2013-04-04
  • Linux一行命令处理批量文件详解

    Linux一行命令处理批量文件详解

    这篇文章主要介绍了Linux一行命令处理批量文件详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-08-08
  • rsync 数据同步使用详解

    rsync 数据同步使用详解

    rsync 是很强大的同步工具 本地远程皆宜 不少project都提供 http ftp rsync 等mirror方式 rsync官方主页是 http://samba.anu.edu.au/rsync/
    2008-09-09
  • 详解centos7配置本地yum源的方法

    详解centos7配置本地yum源的方法

    本篇文章主要介绍了详解centos7配置本地yum源的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧。
    2017-03-03
  • Linux用if判断目录是否存在实例方法

    Linux用if判断目录是否存在实例方法

    在本篇文章中小编给各位整理的是关于Linux如何使用if判断目录是否存在的相关内容,有需要的朋友们可以参考下。
    2020-03-03
  • Linux下安装Anaconda3全过程

    Linux下安装Anaconda3全过程

    这篇文章主要介绍了Linux下安装Anaconda3全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-05-05
  • apache无法启动的可能原因分析及对策

    apache无法启动的可能原因分析及对策

    在遇到apache无法启动时,可以参照如下可能的原因进行分析与解决,有类似情况的朋友可以参考下哈
    2013-05-05

最新评论