温馨提示×

ubuntu gitlab如何配置域名

小樊
39
2026-10-13 17:13:08
栏目: 云计算

在 Ubuntu 上给 GitLab 配置域名,通常分为 GitLab 自身配置 和 Web 服务器 / DNS 配置 两部分。下面以 官方 Omnibus GitLab 为例说明(最常见)。


一、前提条件

  1. 已安装 GitLab(Ubuntu)
  2. 拥有一个域名(如 gitlab.example.com)
  3. 域名已解析到服务器公网 IP(A 记录)

二、修改 GitLab 域名配置

1. 编辑 GitLab 配置文件

sudo vim /etc/gitlab/gitlab.rb

找到并修改:

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

或使用 HTTPS:

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

⚠️ 如果你用 HTTPS,建议让 GitLab 自动申请证书(见下文)


2. 重新配置 GitLab

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

三、配置 HTTPS(推荐)

方式一:Let’s Encrypt 自动证书(最简单)

在 gitlab.rb 中:

letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com']

然后:

sudo gitlab-ctl reconfigure

GitLab 会自动申请并配置 SSL。


方式二:使用自有证书

nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.example.com.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.example.com.key"

证书目录需存在:

sudo mkdir -p /etc/gitlab/ssl

四、防火墙与端口

确保端口开放:

sudo ufw allow 80
sudo ufw allow 443

五、DNS 配置(域名解析)

在你的域名服务商处:

  • 类型:A
  • 主机:gitlab
  • 值:你的服务器IP

示例:

gitlab.example.com → 1.2.3.4

六、验证

浏览器访问:

https://gitlab.example.com

或命令行:

curl -I https://gitlab.example.com

七、常见问题

1. 还是显示 IP?

  • 清浏览器缓存
  • 确认 external_url 已修改并 reconfigure

2. 端口不是 80/443?

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

3. 使用 Docker GitLab?

需映射端口并配置 GITLAB_OMNIBUS_CONFIG 中的 external_url


如果你的情况是:

  • Docker 安装
  • 使用 Nginx 反代
  • 自建 CA
  • 内网域名

可以告诉我,我给你对应方案。

0 踩