在 Debian 上运行的 GitLab 更换域名,通常按下面步骤操作即可(适用于 Omnibus 版 GitLab,绝大多数情况)。
编辑 GitLab 配置文件:
sudo vim /etc/gitlab/gitlab.rb
找到并修改以下配置(如果没有就新增):
external_url 'https://new.domain.com'
⚠️ 注意:
http://,现在想用 https://,直接写 https/示例:
external_url 'https://git.example.com'
修改完后执行:
sudo gitlab-ctl reconfigure
这一步会:
sudo gitlab-ctl restart
在你的域名服务商处,将新域名解析到 GitLab 服务器 IP:
A new.domain.com -> 服务器公网IP
如果是内网环境,修改 /etc/hosts 或内网 DNS。
在 gitlab.rb 中:
letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['admin@example.com']
然后:
sudo gitlab-ctl reconfigure
nginx['ssl_certificate'] = "/etc/gitlab/ssl/new.domain.com.crt"
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/new.domain.com.key"
再 reconfigure。
更换域名后,旧仓库地址会失效,需要通知用户更新:
git remote set-url origin https://new.domain.com/username/project.git
GitLab 页面上的 clone 地址会自动更新。
sudo gitlab-rake gitlab:env:info
或访问:
https://new.domain.com
external_url 已修改并 reconfigure如果是 Docker 启动:
-e GITLAB_OMNIBUS_CONFIG="external_url 'https://new.domain.com'"
如果你能告诉我:
我可以给你更精确的步骤。