在 Linux 上部署 GitLab 并配置域名,通常分为以下几个步骤。以下以 Omnibus 版 GitLab(最常见的官方安装方式) 为例。
git.example.com)sudo vi /etc/gitlab/gitlab.rb
找到或添加:
external_url 'https://git.example.com'
如果是 HTTP:
external_url 'http://git.example.com'
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com']
GitLab 会自动申请证书并配置 Nginx。
把你自己的证书放到:
/etc/gitlab/ssl/git.example.com.crt
/etc/gitlab/ssl/git.example.com.key
并在 gitlab.rb 中确认:
nginx['ssl_certificate'] = "/etc/gitlab/ssl/git.example.com.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/git.example.com.key"
每次修改配置后都必须执行:
sudo gitlab-ctl reconfigure
重启服务(可选):
sudo gitlab-ctl restart
在你的域名服务商后台:
| 类型 | 主机记录 | 值 |
|---|---|---|
| A | git | 服务器公网 IP |
示例:
git.example.com → 1.2.3.4
确保放行:
# firewall
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
云服务器还要在 安全组 放行 80 / 443。
浏览器访问:
https://git.example.com
如果能打开 GitLab 登录页,说明配置成功。
gitlab-ctl status 查看服务external_url 未改gitlab-ctl reconfigure可关闭 GitLab 自带 Nginx:
nginx['enable'] = false
再由外部 Nginx 代理 /
如果你告诉我:
我可以给你更精确的配置示例。