温馨提示×

GitLab在Linux怎么运行

小樊
46
2026-08-13 05:04:37
栏目: 智能运维

GitLab 在 Linux 上运行主要有 三种常见方式,最推荐的是 Omnibus 包安装Docker 方式。下面按使用场景给你一个清晰说明。


一、GitLab 在 Linux 上的运行方式对比

方式 推荐程度 适合人群
Omnibus 包安装 ⭐⭐⭐⭐⭐ 生产环境、初学者
Docker 运行 ⭐⭐⭐⭐ 测试 / 快速部署
源码安装 仅开发 / 研究

二、Omnibus 方式(官方推荐)

1️⃣ 系统要求

  • Linux 发行版:Ubuntu / Debian / CentOS / Rocky / Alma
  • 内存:≥ 4GB(推荐 8GB)
  • CPU:≥ 2 核

2️⃣ 安装 GitLab(以 Ubuntu 为例)

# 安装依赖
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata

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

# 安装 GitLab
sudo apt update
sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee

EXTERNAL_URL 换成你的域名或 IP,例如:

EXTERNAL_URL="http://192.168.1.100"

3️⃣ 初始化并启动

sudo gitlab-ctl reconfigure

启动服务:

sudo gitlab-ctl start

查看状态:

sudo gitlab-ctl status

4️⃣ 访问 GitLab

浏览器访问:

http://你的IP或域名

首次登录设置 root 密码即可。


三、Docker 方式(最简单)

1️⃣ 安装 Docker

curl -fsSL https://get.docker.com | bash
systemctl enable --now docker

2️⃣ 运行 GitLab

docker run -d \
  --hostname gitlab.example.com \
  --publish 443:443 --publish 80:80 --publish 22:22 \
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ee:latest

启动后访问:

http://服务器IP

四、GitLab 常用管理命令

# 启动
sudo gitlab-ctl start

# 停止
sudo gitlab-ctl stop

# 重启
sudo gitlab-ctl restart

# 查看日志
sudo gitlab-ctl tail

# 查看配置
cat /etc/gitlab/gitlab.rb

五、常见问题

✅ GitLab 启动慢?

  • 正常现象(首次启动 2–5 分钟)
  • 可用 top / htop 查看是否内存不足

✅ 80 端口被占用?

sudo netstat -tulnp | grep 80

或修改 /etc/gitlab/gitlab.rb

external_url 'http://ip:8080'

六、你现在的场景是?

可以告诉我:

  • ✅ 是 生产环境 还是 测试学习
  • ✅ 用的是 Ubuntu / CentOS / 其他
  • ✅ 是否需要 HTTPS / CI / Runner

我可以给你 一步不出错的定制安装方案

0