下面给你一份**在 Debian 上配置 GitLab(CE 社区版)**的完整指南,适用于 Debian 11 / 12,包含安装、基础配置、常用优化和常见问题处理。
最低配置:
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl openssh-server ca-certificates tzdata
curl -fsSL https://packages.gitlab.com/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/gitlab-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/gitlab-archive-keyring.gpg] https://packages.gitlab.com/gitlab/gitlab-ce/debian $(lsb_release -cs) main" | \
sudo tee /etc/apt/sources.list.d/gitlab_gitlab-ce.list
sudo apt update
sudo apt install -y gitlab-ce
sudo vim /etc/gitlab/gitlab.rb
external_url 'http://gitlab.example.com'
如果是 HTTPS:
external_url 'https://gitlab.example.com'
⚠️ 修改后必须执行:
sudo gitlab-ctl reconfigure
sudo gitlab-ctl reconfigure
查看状态:
sudo gitlab-ctl status
sudo cat /etc/gitlab/initial_root_password
密码只显示一次,建议登录后立即修改
浏览器访问:
http://服务器IP
默认用户:
用户名:root
密码:上面获取的密码
external_url 'http://your_ip:8080'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@qq.com"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_domain'] = "qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
然后:
sudo gitlab-ctl reconfigure
puma['worker_processes'] = 2
sidekiq['max_concurrency'] = 10
postgresql['shared_buffers'] = "256MB"
sudo gitlab-ctl start
sudo gitlab-ctl stop
sudo gitlab-ctl restart
sudo gitlab-ctl tail
查看日志:
sudo gitlab-ctl tail
sudo gitlab-backup create
sudo gitlab-backup restore BACKUP=timestamp
gitlab-ctl reconfigure 未完成sudo ufw allow 80
sudo ufw allow 443
| 场景 | 建议 |
|---|---|
| 学习 / 测试 | 官方 GitLab CE |
| 小团队 | Gitea |
| 不想维护 | GitLab.com |
如果你愿意,可以告诉我:
我可以给你一份完全按需定制的配置方案。