Linux 上 GitLab 卡顿 是一个非常常见的问题,通常不是单一原因,而是资源、配置、使用方式叠加导致的。下面按「最常见 → 较少见」帮你系统梳理原因和对应解决办法。
GitLab 非常吃资源,官方最低要求:
实际中常见卡顿场景:
✅ 检查方式:
free -h
top
htop
iostat -x 1
✅ 解决:
GitLab 默认会启用:
这些一起跑,小机器直接卡死
✅ 精简配置(/etc/gitlab/gitlab.rb):
prometheus_monitoring['enable'] = false
grafana['enable'] = false
然后:
gitlab-ctl reconfigure
表现:
✅ 查看:
gitlab-ctl status
gitlab-rake gitlab:sidekiq:alive
✅ 解决:
gitlab-ctl restart sidekiq
GitLab 13+ 默认用 Puma
如果 worker 数太多或太少都会卡
✅ 推荐配置(8G 内存):
puma['worker_processes'] = 4
puma['min_threads'] = 4
puma['max_threads'] = 8
然后:
gitlab-ctl reconfigure
gitlab-ctl restart puma
✅ 表现:
✅ 解决:
尤其是:
✅ 检查:
iostat -x 1
✅ 解决:
如果你用:
常见问题:
✅ 建议:
如果你用 Docker 跑 GitLab:
mem_limit: 2g
➡️ 直接卡死
✅ 至少:
mem_limit: 6g
cpus: 4
你可以按顺序排查:
你可以贴出:
我可以直接给你最优 gitlab.rb 配置。