Omnibus包部署最稳,自带Nginx、PostgreSQL、Redis等全部依赖,配置统一在/etc/gitlab/gitlab.rb,重配只需gitlab-ctl reconfigure;需确保Rocky Linux 8/9、AlmaLinux等系统及4GB+内存达标。

直接用 gitlab-ce 的 Omnibus 包部署最稳,不建议手动编译或拼凑组件——它自带 Nginx、PostgreSQL、Redis、Sidekiq 等全部依赖,配置统一收口在 /etc/gitlab/gitlab.rb,重配只需跑一次 gitlab-ctl reconfigure。
确认系统与硬件是否达标
Rocky Linux 8/9、AlmaLinux、CentOS Stream 或 Ubuntu 22.04+ 都可;但别在内存 gitlab-ctl reconfigure 极易卡死或后续频繁报 502。磁盘至少留 20GB 可用空间(日志 + 仓库 + Git LFS 容易吃满)。
- 查内存:
free -h,若 sudo fallocate -l 4G /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile - 开 SSH 和防火墙基础服务:
sudo systemctl enable --now sshd;CentOS/RHEL 系必须加:sudo firewall-cmd --permanent --add-service={http,https,ssh} && sudo firewall-cmd --reload - Postfix(发邮件用)非必需,但没它就收不到注册/密码重置邮件:
sudo dnf install -y postfix && sudo systemctl enable --now postfix
用清华源快速安装 gitlab-ce
官方源在国内慢且偶发超时,清华镜像站同步及时、稳定。注意:不是改 /etc/yum.repos.d/,而是直接运行官方脚本——它会自动识别发行版并写入对应 repo。
抓取指定 GitHub用户的 Stars 项目,生成标准化中文 Markdown 报告。用户提及「分析 GitHub stars」「导出收藏项目」「汇总 GitHub 星标」「生成 stars 报告」或粘贴含 ?tab=stars 的链接时触发。执行通过 bash...
- 执行:
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash - 安装时必须指定
EXTERNAL_URL,否则默认绑http://localhost,访问会 404:sudo EXTERNAL_URL="http://192.168.0.28" dnf install -y gitlab-ce(IP 换成你服务器实际地址) - 安装完不要急着访问,先检查端口占用:
sudo ss -tlnp | grep ':80\|:443',如果有其他服务(如 nginx)占了 80 端口,gitlab-ctl reconfigure会失败
修改 gitlab.rb 后必须 reconfigure
/etc/gitlab/gitlab.rb 是唯一配置入口,改完不运行 gitlab-ctl reconfigure 就等于没改。常见误操作是改完文件就去 systemctl restart gitlab-runsvdir,这不会生效。
- 设访问地址:
external_url 'http://192.168.0.28'(必须带协议,不能只写 IP) - 改 SSH 端口(避免和系统 SSH 冲突):
gitlab_rails['gitlab_shell_ssh_port'] = 2222,然后在防火墙放行:sudo firewall-cmd --permanent --add-port=2222/tcp - 关内置 PostgreSQL(想外接 PG 时):
postgresql['enable'] = false,但务必同步关掉所有依赖它的服务,否则reconfigure报错 - 改完立刻执行:
sudo gitlab-ctl reconfigure,首次耗时 3–5 分钟,看到Running handlers complete才算成功
启动后打不开?先看这几个点
页面空白、502、ERR_CONNECTION_REFUSED 不是“装失败”,大概率是服务没真正起来或端口不通。
- 查主进程状态:
sudo gitlab-ctl status,重点看nginx、gitlab-workhorse、sidekiq是否都是run;若显示down,直接sudo gitlab-ctl restart - 看 nginx 错误日志:
sudo gitlab-ctl tail nginx,常见报错是证书路径错、external_url协议和实际访问不一致 - 浏览器访问前,先本地 curl 测试:
curl -I http://192.168.0.28,返回HTTP/1.1 302或200才说明服务通了 - 首次访问需设 root 密码,页面卡住不动?等 2–3 分钟,GitLab 初始化用户数据库较慢,别反复刷新
最关键的其实是 EXTERNAL_URL 和实际访问地址必须完全一致(协议、域名/IP、端口),差一个字符都会导致静态资源加载失败或登录跳转异常——这个细节被跳过的频率,比内存不足还高。

















