“Linux 上 GitLab 配置失败”是一个比较宽泛的问题,原因可能来自系统环境、安装方式、配置文件、端口/权限、网络等多个方面。下面我按常见原因 + 排查思路给你系统梳理一下,你可以对照看是哪一种。
GitLab(尤其是 Omnibus 版)对资源要求较高:
症状
gitlab-ctl reconfigure 卡住ruby / chef 超时排查
free -h
df -h
解决
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
GitLab 默认占用:
常见冲突
排查
sudo netstat -tunlp | grep -E '80|443|22|8080'
解决
external_url 'http://gitlab.example.com:8090'
gitlab.rb 配置错误很多人改了 gitlab.rb 但格式不对。
常见错误
external_url 但没重启正确示例
external_url 'http://192.168.1.100'
重新加载配置
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
GitLab 对目录权限非常敏感。
常见错误
/var/opt/gitlab 权限被手动改过修复权限
sudo gitlab-ctl stop
sudo chown -R git:git /var/opt/gitlab
sudo gitlab-ctl reconfigure
SELinux
getenforce
如果是 Enforcing,可临时关闭测试:
sudo setenforce 0
防火墙
sudo firewall-cmd --list-all
开放端口:
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload
不同方式问题不同:
| 安装方式 | 常见问题 |
|---|---|
| Omnibus | 配置最稳,但占资源 |
| Docker | 端口映射错误 |
| 源码安装 | 依赖极复杂,不建议 |
推荐
sudo EXTERNAL_URL="http://gitlab.example.com" apt-get install gitlab-ee
请把以下信息发我,我能精准判断:
cat /etc/os-release
sudo gitlab-ctl reconfigure
sudo gitlab-ctl tail
如果你只是想先跑起来:
external_url 'http://localhost'
然后:
sudo gitlab-ctl reconfigure
如果你愿意,可以直接把报错截图或日志贴出来,我可以一步一步帮你修。