温馨提示×

如何配置debian上的gitlab

小樊
48
2026-09-11 10:02:51
栏目: 智能运维

在 Debian 上配置 GitLab,通常有两种常见方式:

  1. Omnibus 安装(官方推荐,最省事)
  2. 源码 / Docker / Kubernetes 安装(高级)

下面以 Debian 12(Bookworm)为例,使用 Omnibus 方式 说明从安装到基本配置的全过程。


一、准备工作

1. 系统要求

  • Debian 11/12(64 位)
  • 至少 4 GB RAM(推荐 8 GB+)
  • 防火墙开放:
    • 80(HTTP)
    • 443(HTTPS)
    • 22(SSH,若启用)

2. 更新系统

sudo apt update
sudo apt upgrade -y

二、安装 GitLab(Omnibus)

方式一:使用官方脚本(推荐)

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash

社区版用 gitlab-ce

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

安装 GitLab

sudo EXTERNAL_URL="http://gitlab.example.com" apt install gitlab-ee -y

如果是内网服务器:

sudo EXTERNAL_URL="http://192.168.1.100" apt install gitlab-ee -y

安装完成后会自动执行 gitlab-ctl reconfigure


三、基本配置

1. 配置文件位置

/etc/gitlab/gitlab.rb

2. 修改外部访问地址

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

若使用 HTTPS:

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

3. 应用配置

sudo gitlab-ctl reconfigure

四、常用管理命令

sudo gitlab-ctl status
sudo gitlab-ctl restart
sudo gitlab-ctl stop
sudo gitlab-ctl start
sudo gitlab-ctl tail

五、首次登录

  1. 浏览器访问:
http://<服务器IP>
  1. 设置 root 密码:
sudo gitlab-rake "gitlab:password:reset[root]"

六、配置 HTTPS(可选但推荐)

使用 Let’s Encrypt

letsencrypt['enable'] = true
letsencrypt['auto_renew'] = true

然后:

sudo gitlab-ctl reconfigure

七、邮件配置(可选)

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.example.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "gitlab@example.com"
gitlab_rails['smtp_password'] = "password"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
sudo gitlab-ctl reconfigure

八、备份与恢复

备份

sudo gitlab-rake gitlab:backup:create

恢复

sudo gitlab-rake gitlab:backup:restore BACKUP=timestamp

九、常见问题

1. 端口冲突(如 80 被占用)

nginx['listen_port'] = 8080

2. 降低资源占用

sidekiq['concurrency'] = 5
postgresql['shared_buffers'] = "256MB"

如果你愿意,我可以:

  • 给你 Debian + Docker 安装 GitLab
  • 帮你做 内网 / 局域网配置
  • 或按你的 服务器规格优化配置

你现在是准备装在 云服务器还是内网机器

0