温馨提示×

GitLab Linux配置需要啥

小樊
32
2026-08-24 21:17:23
栏目: 智能运维

在 Linux 上部署和配置 GitLab,通常分为 硬件要求、系统准备、安装方式、基础配置、常见问题 几部分。下面给你一个实用型清单,适合生产环境。


一、硬件要求(官方推荐)

最低配置(测试/学习)

  • CPU:2 核
  • 内存:4 GB(⚠️ 少于 4G 很容易卡死)
  • 磁盘:20 GB+

推荐配置(生产环境)

  • CPU:4 核+
  • 内存:8 GB+
  • 磁盘:50 GB+(视代码量、CI 决定)

二、系统要求

支持的操作系统

推荐

  • Ubuntu(20.04 / 22.04)
  • Debian
  • CentOS / Rocky / AlmaLinux(8+)

❌ 不推荐

  • 太老的内核
  • 使用 WSL(定位是开发,不是生产)

三、安装方式(推荐)

✅ 方式一:Omnibus 安装(最简单、最稳定)

官方推荐

# Ubuntu / Debian
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata

curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/gitlab-archive-keyring.gpg

echo "deb [signed-by=/usr/share/keyrings/gitlab-archive-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ee/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ee.list

sudo apt update
sudo apt install gitlab-ee

✅ 方式二:Docker(适合快速测试)

docker run -d \
  --hostname gitlab.example.com \
  -p 443:443 -p 80:80 -p 22:22 \
  --name gitlab \
  gitlab/gitlab-ee:latest

四、核心配置文件

主配置文件

/etc/gitlab/gitlab.rb

常用配置项

# 访问地址
external_url 'http://gitlab.example.com'

# 邮件(SMTP)
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@qq.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

五、初始化与启动

# 使配置生效(⚠️ 会重启服务)
sudo gitlab-ctl reconfigure

# 启动
sudo gitlab-ctl start

# 查看状态
sudo gitlab-ctl status

六、首次访问

  1. 浏览器访问:
    http://服务器IP
    
  2. 设置 root 密码
  3. 登录:
    • 用户名:root
    • 密码:刚设置的

七、必须检查的安全配置

✅ 防火墙

sudo ufw allow 80
sudo ufw allow 22

✅ SSH

sudo systemctl enable ssh
sudo systemctl start ssh

✅ 禁用或限制注册

Admin → Settings → Sign-up restrictions

八、常用维护命令

gitlab-ctl status
gitlab-ctl restart
gitlab-ctl stop
gitlab-ctl tail
gitlab-rake gitlab:check

九、常见坑(重点)

问题 原因 解决
502 内存不足 ≥4G
访问慢 Swap 没开 加 swap
端口冲突 80/22 被占用 改端口
邮件发不出 SMTP 配置错 检查 465/587

十、如果你愿意,我可以继续帮你

你可以直接告诉我:

  • Ubuntu 还是 CentOS?
  • 内网还是公网?
  • 是否要 HTTPS?
  • 是否需要 CI/CD Runner?

我可以给你 一步一步的定制部署方案

0