温馨提示×

ubuntu中gitlab如何设置域名

小樊
40
2025-11-23 04:04:44
栏目: 云计算

Ubuntu 中 GitLab 设置域名

一 修改 external_url

  • 编辑配置文件
    • 打开:sudo nano /etc/gitlab/gitlab.rb
    • 设置访问地址(将域名替换为你的实际域名):
      • HTTP:external_url ‘http://gitlab.example.com’
      • HTTPS:external_url ‘https://gitlab.example.com’
  • 使配置生效
    • 执行:sudo gitlab-ctl reconfigure
  • 说明
    • 该文件为 Omnibus 包的主配置,修改后需运行 reconfigure 才会应用到 GitLab。

二 配置 DNS 与端口

  • DNS 解析
    • 在域名解析商处添加 A 记录:将 gitlab.example.com 指向服务器 公网 IP
  • 端口与防火墙
    • 开放 80/443(HTTP/HTTPS)入站端口(如使用云服务器,还需在控制台安全组放行)。
    • 避免端口冲突:确保 8080 端口未被其他程序占用(GitLab 内部组件可能用到)。
  • 访问验证
    • 浏览器访问:http://gitlab.example.comhttps://gitlab.example.com

三 启用 HTTPS 的两种方式

  • 方式 A 自动申请 Let’s Encrypt 证书(推荐)
    • /etc/gitlab/gitlab.rb 中启用内置自动签发(取消注释并填写联系邮箱):
      • letsencrypt[‘enable’] = true
      • letsencrypt[‘contact_emails’] = [‘admin@example.com’]
    • 确保 external_urlhttps:// 开头,然后执行:sudo gitlab-ctl reconfigure
    • 说明:会自动为域名申请并续期证书,适合公网可访问的实例。
  • 方式 B 手动指定已有证书
    • 准备证书与密钥(示例路径,请按实际替换):
      • 证书:/etc/gitlab/ssl/gitlab.crt
      • 密钥:/etc/gitlab/ssl/gitlab.key
      • 可选 DH 参数:/etc/gitlab/ssl/dhparams.pem
    • /etc/gitlab/gitlab.rb 中配置:
      • external_url ‘https://gitlab.example.com’
      • nginx[‘redirect_http_to_https’] = true
      • nginx[‘ssl_certificate’] = “/etc/gitlab/ssl/gitlab.crt”
      • nginx[‘ssl_certificate_key’] = “/etc/gitlab/ssl/gitlab.key”
      • nginx[‘ssl_dhparam’] = “/etc/gitlab/ssl/dhparams.pem”
    • 应用:sudo gitlab-ctl reconfigure

四 常见问题与验证

  • 配置未生效
    • 确认修改的是 /etc/gitlab/gitlab.rb,并执行 sudo gitlab-ctl reconfigure;不要手动改 /var/opt/gitlab/ 下的生成文件。
  • 端口占用
    • 8080 被占用,先释放或调整占用进程,再执行 reconfigure。
  • 初始登录
    • 首次启动后,管理员密码在 /etc/gitlab/initial_root_password(该文件在首次 reconfigure 后 24 小时自动删除),登录用户名为 root
  • 访问异常
    • 核对 DNS 记录是否生效、80/443 是否放行、证书路径与权限是否正确;必要时查看日志:sudo gitlab-ctl tail

0