温馨提示×

GitLab Linux版怎么配

小樊
35
2026-07-14 09:21:53
栏目: 智能运维

下面按最常见场景给你一个清晰、可落地的 GitLab(Linux 版)配置指南,适合自建 GitLab CE(社区版),以 Ubuntu / Debian 为主(CentOS / RHEL 会单独说明)。


一、GitLab Linux 版整体说明

GitLab 官方推荐 Omnibus 安装包,一条命令即可完成:

  • GitLab
  • Nginx
  • PostgreSQL
  • Redis
  • 所有依赖

不要用源码安装(维护成本极高)


二、系统要求(最低)

项目 建议
CPU 4 核+
内存 8GB+(4GB 非常卡)
磁盘 50GB+(代码+CI)
系统 Ubuntu 20.04 / 22.04

三、Ubuntu / Debian 安装 GitLab

1️⃣ 安装依赖

sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata

2️⃣ 添加 GitLab 官方仓库

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-ce/ubuntu $(lsb_release -cs) main" \
| sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list

3️⃣ 安装 GitLab CE

sudo apt update
sudo apt install -y gitlab-ce

四、核心配置(最重要)

1️⃣ 修改配置文件

sudo vim /etc/gitlab/gitlab.rb

2️⃣ 设置访问地址(必须)

external_url 'http://gitlab.example.com'

✅ 如果是 IP:

external_url 'http://192.168.1.100'

✅ 如果是 HTTPS:

external_url 'https://gitlab.example.com'

3️⃣ 应用配置(关键步骤)

sudo gitlab-ctl reconfigure

⚠️ 第一次会等 3–10 分钟


五、访问 GitLab

浏览器访问:

http://your_ip

首次登录:

  • 用户名:root
  • 密码在:
sudo cat /etc/gitlab/initial_root_password

⚠️ 24 小时后自动删除


六、常用配置项(生产必看)

✅ 修改端口

external_url 'http://192.168.1.100:8080'

✅ 使用自定义 Nginx

nginx['enable'] = false

✅ 邮件配置(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'] = "授权码"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

✅ 限制内存(低配服务器)

sidekiq['max_concurrency'] = 10
puma['worker_processes'] = 2

七、常用运维命令

sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart
sudo gitlab-ctl status

sudo gitlab-ctl tail

八、CentOS / RHEL 安装(简述)

sudo yum install -y curl policycoreutils openssh-server
curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /etc/pki/rpm-gpg/gitlab.gpg

sudo yum install -y gitlab-ce
sudo gitlab-ctl reconfigure

九、常见问题

❌ 502 错误

  • 内存不足
  • gitlab-ctl reconfigure 未完成
  • 端口冲突

❌ 访问慢

  • 关闭 CI/CD
  • 限制 Sidekiq
  • 用 SSD

十、你下一步可以做什么?

✅ 配置 HTTPS(Let’s Encrypt)
✅ 配置 CI Runner
✅ 迁移 GitLab
✅ 对接 LDAP / AD
✅ 备份与恢复


如果你愿意,可以告诉我: 1️⃣ 你的 Linux 版本
2️⃣ 是 内网还是公网
3️⃣ 是否要 HTTPS / 域名

我可以直接给你定制配置方案

0