温馨提示×

centos gitlab为啥打不开

小樊
40
2026-09-15 00:01:50
栏目: 智能运维

CentOS 上 GitLab 打不开,原因通常比较多,可以按下面顺序一步步排查。你先回答几个问题会更快定位,但我先给你常见原因 + 排查方法


一、先看 GitLab 服务是否真的在运行

sudo gitlab-ctl status

正常应该看到 run 状态,比如:

  • nginx
  • unicorn / puma
  • sidekiq
  • postgresql

如果有 down,说明服务挂了。

启动 / 重启:

sudo gitlab-ctl restart

二、看端口是否被监听(默认 80 或 443)

sudo netstat -lntp | grep -E '80|443'

或:

ss -lntp | grep nginx

如果没有监听,说明 nginx 没起来。


三、防火墙 / SELinux 问题(CentOS 最常见)

1️⃣ 防火墙

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

2️⃣ SELinux(非常常见)

临时关闭测试:

sudo setenforce 0

如果能打开,说明是 SELinux 问题:

sudo setsebool -P httpd_can_network_connect 1

四、GitLab 配置文件问题

查看配置:

sudo vim /etc/gitlab/gitlab.rb

重点检查:

external_url 'http://你的IP或域名'

改完执行:

sudo gitlab-ctl reconfigure

五、内存不足(GitLab 很吃内存)

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 配错

八、你可以直接告诉我这些,我帮你精准判断

  1. CentOS 版本(7 还是 8 / Stream)
  2. GitLab 安装方式(Omnibus / Docker)
  3. 报错页面内容(502?连接超时?)
  4. gitlab-ctl status 输出
  5. 是 IP 访问还是域名

我可以一步一步带你修。

0