当前位置:首页 > 行业动态 > 正文

如何在Linux系统上快速搭建GitLab?

GitLab是一款开源DevOps平台,在Linux系统搭建需安装依赖库,配置仓库源后通过包管理器一键部署,启动服务后通过浏览器访问IP进行初始化,设置管理员账户、域名及HTTPS证书即可创建私有代码仓库,支持团队协作、CI/CD等全流程开发管理。

第一步:准备工作
在Linux服务器上搭建GitLab前,需确保满足以下条件:

  1. 系统环境:推荐使用Ubuntu 20.04/22.04 LTS或CentOS 7/8,系统需更新至最新稳定版本。
  2. 硬件配置:至少4GB内存(2GB可能导致性能不足)、2核CPU、20GB磁盘空间(后续根据项目需求扩展)。
  3. 网络要求:开放HTTP/HTTPS(80/443端口)和SSH(22端口),若使用防火墙需提前配置。
  4. 域名准备:建议绑定域名并配置SSL证书,提升安全性与访问体验。

第二步:安装依赖与配置环境

  1. 更新系统与安装工具包
    sudo apt update && sudo apt upgrade -y  # Ubuntu/Debian
    sudo yum update -y && sudo yum install -y curl policycoreutils  # CentOS/RHEL
  2. 安装邮件服务(可选)
    GitLab需邮件服务发送通知,可安装Postfix:

    sudo apt install -y postfix  # Ubuntu/Debian
    sudo yum install -y postfix  # CentOS/RHEL

    安装时选择“Internet Site”,域名填写服务器IP或域名。


第三步:安装GitLab社区版

如何在Linux系统上快速搭建GitLab?  第1张

  1. 添加GitLab官方仓库
    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash  # Ubuntu/Debian
    curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash  # CentOS/RHEL
  2. 执行安装命令
    替换your-domain.com为实际域名或服务器IP:

    sudo EXTERNAL_URL="http://your-domain.com" apt install gitlab-ce  # Ubuntu/Debian
    sudo EXTERNAL_URL="http://your-domain.com" yum install gitlab-ce  # CentOS/RHEL

第四步:初始化配置与访问

  1. 启动GitLab服务
    sudo gitlab-ctl reconfigure  # 自动完成初始配置
  2. 获取初始密码
    首次安装后,默认管理员密码存储在文件中:

    sudo cat /etc/gitlab/initial_root_password
  3. 登录管理后台
    浏览器访问 http://your-domain.com,使用用户名 root 和上述密码登录。

第五步:高级配置(可选但推荐)

  1. 启用HTTPS加密
    修改配置文件 /etc/gitlab/gitlab.rb,添加以下内容:

    external_url 'https://your-domain.com'
    letsencrypt['enable'] = true
    letsencrypt['contact_emails'] = ['admin@example.com']

    保存后运行 sudo gitlab-ctl reconfigure

  2. 调整资源限制
    若服务器内存较小,可减少GitLab进程占用:

    unicorn['worker_processes'] = 2
    postgresql['shared_buffers'] = "256MB"
  3. 配置备份与恢复
    • 手动备份:sudo gitlab-backup create
    • 自动备份:通过Crontab定期执行。

第六步:日常维护与安全建议

  1. 定期更新版本
    sudo apt update && sudo apt install gitlab-ce  # Ubuntu/Debian
    sudo yum update gitlab-ce                     # CentOS/RHEL
  2. 监控服务器状态
    • 使用 sudo gitlab-ctl status 检查服务运行状态。
    • 通过 sudo gitlab-rake gitlab:check 验证系统完整性。
  3. 安全加固
    • 开启防火墙限制非必要端口。
    • 定期审计用户权限与项目访问控制。

常见问题解答

  • 访问GitLab出现502错误:检查内存是否不足,可增加Swap空间或优化配置。
  • 邮件服务未生效:验证Postfix状态 systemctl status postfix,检查SMTP配置。
  • 域名解析失败:确认DNS记录正确或本地Hosts文件是否绑定IP与域名。

参考来源

  • GitLab官方文档:https://docs.gitlab.com/ee/install/
  • Let’s Encrypt证书配置指南:https://letsencrypt.org/docs/

0