温馨提示×

如何配置Debian gitlab

小樊
34
2026-07-18 12:06:49
栏目: 智能运维

下面给你一份**在 Debian 上配置 GitLab(CE 社区版)**的完整指南,适用于 Debian 11 / 12,包含安装、基础配置、常用优化和常见问题处理。


一、准备工作

1. 系统要求

最低配置:

  • CPU:2 核
  • 内存:4 GB(推荐 8 GB+)
  • 磁盘:20 GB+(视仓库大小而定)

2. 更新系统

sudo apt update && sudo apt upgrade -y

二、安装 GitLab CE(官方推荐方式)

1. 安装依赖

sudo apt install -y curl openssh-server ca-certificates tzdata

2. 添加 GitLab 官方仓库

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

3. 安装 GitLab CE

sudo apt update
sudo apt install -y gitlab-ce

三、基础配置

1. 修改 GitLab 配置文件

sudo vim /etc/gitlab/gitlab.rb

必改项(示例)

external_url 'http://gitlab.example.com'

如果是 HTTPS

external_url 'https://gitlab.example.com'

⚠️ 修改后必须执行:

sudo gitlab-ctl reconfigure

四、初始化并启动 GitLab

sudo gitlab-ctl reconfigure

查看状态:

sudo gitlab-ctl status

五、首次登录

1. 获取 root 初始密码

sudo cat /etc/gitlab/initial_root_password

密码只显示一次,建议登录后立即修改

2. 登录

浏览器访问:

http://服务器IP

默认用户:

用户名:root
密码:上面获取的密码

六、常用配置示例

1. 修改监听端口

external_url 'http://your_ip:8080'

2. 配置 SMTP 邮件

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

十、常见问题

1. 502 错误

  • 内存不足
  • gitlab-ctl reconfigure 未完成
  • 端口冲突

2. 无法访问

sudo ufw allow 80
sudo ufw allow 443

十一、可选方案

场景 建议
学习 / 测试 官方 GitLab CE
小团队 Gitea
不想维护 GitLab.com

如果你愿意,可以告诉我:

  • Debian 版本
  • 本地 / 云服务器
  • 是否需要 HTTPS / 域名 / Docker

我可以给你一份完全按需定制的配置方案

0