温馨提示×

Linux怎么搭建GitLab

小樊
42
2026-08-13 04:20:50
栏目: 智能运维

下面给你一份在 Linux 上搭建 GitLab(CE 社区版)的完整指南,适用于新手到生产环境,以 Ubuntu / Debian / CentOS / Rocky / AlmaLinux 常见系统为例。


一、准备环境

1️⃣ 系统要求(最低)

项目 建议
CPU 4 核
内存 至少 8GB(推荐 16GB)
磁盘 20GB+ SSD
系统 Ubuntu 20.04/22.04、Debian、CentOS 7/8+

⚠️ 内存低于 4GB 不建议运行 GitLab


二、安装方式(推荐 ✅ 官方 Omnibus)

GitLab 官方推荐使用 Omnibus 包,一步到位。


三、Ubuntu / Debian 安装 GitLab

1️⃣ 安装依赖

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

2️⃣ 添加 GitLab APT 仓库

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

四、CentOS / Rocky / AlmaLinux 安装

1️⃣ 安装依赖

sudo yum install -y curl policycoreutils openssh-server perl

2️⃣ 添加 GitLab YUM 源

curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /etc/pki/rpm-gpg/gitlab.gpg

cat <<EOF | sudo tee /etc/yum.repos.d/gitlab_gitlab-ce.repo
[gitlab_gitlab-ce]
name=gitlab_gitlab-ce
baseurl=https://packages.gitlab.com/gitlab/gitlab-ce/el/8/\$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/gitlab.gpg
EOF

3️⃣ 安装 GitLab

sudo yum install -y gitlab-ce

五、配置 GitLab(核心步骤)

1️⃣ 设置访问地址

编辑配置文件:

sudo vim /etc/gitlab/gitlab.rb

找到并修改:

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

✅ 如果是 本机测试

external_url 'http://your_server_ip'

✅ 如果有 域名

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

2️⃣ 应用配置(重要)

sudo gitlab-ctl reconfigure

这个过程会自动:

  • 配置 Nginx
  • 初始化数据库
  • 启动所有服务

⏳ 时间约 2–5 分钟


六、访问 GitLab

浏览器访问:

http://服务器IP

首次访问会要求设置 root 密码


七、常用 GitLab 管理命令

# 查看状态
sudo gitlab-ctl status

# 启动 / 停止 / 重启
sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart

# 查看日志
sudo gitlab-ctl tail

八、配置 SMTP 邮件(可选)

编辑 /etc/gitlab/gitlab.rb

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

然后:

sudo gitlab-ctl reconfigure

九、备份与恢复(非常重要)

备份

sudo gitlab-backup create

备份目录:

/var/opt/gitlab/backups

恢复

sudo gitlab-backup restore BACKUP=timestamp

十、常见问题

❌ 内存不足

free -h

建议:

  • 增加内存
  • 关闭其他服务
  • 使用 Swap(不推荐生产)

❌ 端口冲突

GitLab 默认使用:

  • 80
  • 443
  • 22

修改 SSH 端口:

sudo vim /etc/gitlab/gitlab.rb
gitlab_rails['gitlab_shell_ssh_port'] = 2222

十一、进阶(可选)

✅ HTTPS(Let’s Encrypt)
✅ GitLab Runner(CI/CD)
✅ Docker 安装 GitLab
✅ 高可用 / 集群


如果你愿意,可以告诉我:

  • ✅ 系统版本(Ubuntu / CentOS / Rocky)
  • ✅ 是否生产环境
  • ✅ 是否需要 HTTPS
  • ✅ 是否想用 Docker

我可以给你定制版安装方案

0