在 Debian 上安装 GitLab 失败,原因通常分为 系统环境、软件源、网络、依赖、配置 五类。下面按排查顺序给你一套实用方案,基本能解决 90% 的问题。
GitLab 官方只支持以下 Debian 版本:
| GitLab 版本 | 支持 Debian |
|---|---|
| GitLab CE 16.x | Debian 11 (Bullseye) |
| GitLab CE 17.x | Debian 11 / 12 (Bookworm) |
⚠️ 不支持 Debian 10 及以下(安装会直接失败)
cat /etc/os-release
sudo apt update
sudo apt install -y curl openssh-server ca-certificates tzdata perl
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
社区版把
gitlab-ee换成gitlab-ce
sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ce
⚠️ 不要用源里自带的 gitlab 包
apt update 慢packages.gitlab.com 超时使用国内镜像
# 清华源
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/gitlab-ce_16.11.2-ce.0_amd64.deb -o gitlab.deb
sudo dpkg -i gitlab.deb
或使用 GitLab 中国镜像站(社区维护)
gitlab-ctl reconfigure 卡死如果内存不足:
free -h
临时方案(不推荐):
sudo fallocate -l 2G /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo netstat -tulnp | grep :80
sudo vim /etc/gitlab/gitlab.rb
external_url 'http://your_ip:8080'
nginx['listen_port'] = 8080
然后:
sudo gitlab-ctl reconfigure
gitlab-ctl reconfigure 报错hostname 不匹配sudo hostnamectl set-hostname gitlab
sudo vim /etc/hosts
127.0.0.1 gitlab
sudo apt install -y \
curl openssh-server ca-certificates tzdata gnupg
sudo gitlab-ctl tail
sudo gitlab-ctl reconfigure --verbose
journalctl -xe
如果你已经装乱了:
sudo gitlab-ctl stop
sudo apt purge gitlab-ce -y
sudo rm -rf /etc/gitlab /var/opt/gitlab /var/log/gitlab
sudo apt autoremove -y
sudo apt update
再重新安装。
docker run -d \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
gitlab/gitlab-ce:latest
✅ 优点:
如果你愿意,可以把 以下信息直接发我:
我可以直接帮你 精准定位到哪一步出错 ✅