CentOS 上 GitLab 打不开,原因通常比较多,可以按下面顺序一步步排查。你先回答几个问题会更快定位,但我先给你常见原因 + 排查方法。
sudo gitlab-ctl status
正常应该看到 run 状态,比如:
nginxunicorn / pumasidekiqpostgresql如果有 down,说明服务挂了。
启动 / 重启:
sudo gitlab-ctl restart
sudo netstat -lntp | grep -E '80|443'
或:
ss -lntp | grep nginx
如果没有监听,说明 nginx 没起来。
sudo firewall-cmd --list-all
如果没开 80/443:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
临时关闭测试:
sudo setenforce 0
如果能打开,说明是 SELinux 问题:
sudo setsebool -P httpd_can_network_connect 1
查看配置:
sudo vim /etc/gitlab/gitlab.rb
重点检查:
external_url 'http://你的IP或域名'
改完执行:
sudo gitlab-ctl reconfigure
GitLab 至少 4G 内存,2G 基本必崩。
free -h
如果内存爆了:
sudo gitlab-ctl stop
sudo gitlab-ctl tail
或单独看 nginx:
sudo gitlab-ctl tail nginx
| 现象 | 原因 |
|---|---|
| 连接被拒绝 | 服务没起 / 端口没监听 |
| 一直转圈 | 内存不足 / 数据库挂了 |
| 502 | unicorn/puma 没起来 |
| 能 ping 不能访问 | 防火墙 / SELinux |
| 域名访问不了 | external_url 配错 |
gitlab-ctl status 输出我可以一步一步带你修。