首页主机资讯ubuntu gitlab网络设置

ubuntu gitlab网络设置

时间2026-01-20 13:57:03发布访客分类主机资讯浏览1145
导读:Ubuntu 上 GitLab 网络设置实操指南 一 基础网络与防火墙 确认网卡与地址:使用 ip a 或 nmcli 查看并确认服务器 IP 与可达性。 放行防火墙端口(UFW 示例): 查看状态:sudo ufw status 放行...

Ubuntu 上 GitLab 网络设置实操指南

一 基础网络与防火墙

  • 确认网卡与地址:使用 ip anmcli 查看并确认服务器 IP 与可达性。
  • 放行防火墙端口(UFW 示例):
    • 查看状态:sudo ufw status
    • 放行访问:sudo ufw allow httpsudo ufw allow httpssudo ufw allow OpenSSH
    • 重载规则:sudo ufw reload
  • 端口占用检查:
    • sudo ss -tulpn | grep ‘:80|:443’sudo netstat -tulpn | grep ‘:80|:443’
  • 虚拟机/云主机注意:
    • 桥接或端口转发需正确配置,确保来自外部的 80/443 能到达 GitLab 主机。
    • 云厂商安全组/NACL 同样需要放行 80/443/TCP

二 配置外部访问地址 external_url

  • 编辑配置文件:sudo vim /etc/gitlab/gitlab.rb
  • 设置访问地址(二选一或带端口):
    • 仅 IP:external_url ‘http://192.168.1.100’
    • 域名:external_url ‘https://gitlab.example.com’
    • 自定义端口:external_url ‘http://192.168.1.100:8080’
  • 使配置生效:sudo gitlab-ctl reconfigure(会自动重启相关服务)
  • 访问测试:浏览器打开配置的 external_url;如为 HTTP,确保 80 已放行;如为 HTTPS,确保 443 已放行。

三 启用 HTTPS 与证书

  • 方案 A 手动证书(自签或已有证书)
    • 准备证书与密钥(示例):
      • 生成私钥:openssl genrsa -out server.key 2048
      • 生成 CSR:openssl req -new -key server.key -out cert_req.csr -subj “/C=CN/ST=Test/L=Test/O=Test/OU=Main/CN=gitlab.example.com”
      • 自签证书:openssl x509 -req -days 365 -in cert_req.csr -signkey server.key -out server_cert.crt
    • 配置 gitlab.rb:
      • nginx[‘enable’] = true
      • nginx[‘redirect_http_to_https’] = true
      • nginx[‘ssl_certificate’] = “/etc/gitlab/ssl/server_cert.crt”
      • nginx[‘ssl_certificate_key’] = “/etc/gitlab/ssl/server.key”
    • 应用:sudo gitlab-ctl reconfigure
  • 方案 B Let’s Encrypt 自动证书
    • 配置示例:
      • external_url ‘https://gitlab.example.com’
      • letsencrypt[‘enable’] = true
    • 如申请超时,优先排查域名解析、80 端口连通性与防火墙/云安全组。

四 端口冲突与常见网络问题排查

  • 端口被占用(如 80/443 被 Nginx/Apache 占用):
    • 方案 1:停用占用者或改用其他端口(如 8080),并在 external_url 中同步端口。
    • 方案 2:调整 GitLab 内置 Nginx/Puma 端口,例如:
      • 修改 /etc/gitlab/gitlab.rb
        • external_url ‘http://192.168.0.136:8080’
        • puma[‘port’] = 8081
      • 应用:sudo gitlab-ctl reconfigure & & sudo gitlab-ctl restart
  • 无法访问:
    • 本机/远端分别 curl -I http://服务器IP/curl -Iv https://域名/ 排查 TCPTLS 握手。
    • 核对 UFW/iptables/云安全组 是否放行 80/443
    • 检查 external_url 是否与访问方式一致(HTTP/HTTPS、端口)。
  • 克隆地址异常:
    • 若页面展示的 git@http 地址不正确,优先检查 external_url 是否为目标 IP/域名,然后 reconfigure 并重启。

五 常用命令与维护

  • 服务管理:sudo gitlab-ctl start|stop|restart|status
  • 配置校验与应用:sudo gitlab-ctl reconfigure
  • 配置检查:sudo gitlab-rake gitlab:check
  • 备份与恢复:
    • 备份:sudo gitlab-backup create(默认目录 /var/opt/gitlab/backups
    • 恢复:先停相关服务,再执行 sudo gitlab-backup restore BACKUP=时间戳,随后启动服务
  • 初始密码:首次登录前查看 /etc/gitlab/initial_root_password(默认 24 小时后自动删除,请尽快登录修改)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ubuntu gitlab网络设置
本文地址: https://pptw.com/jishu/787227.html
Debian DHCP如何自动化部署 Debian Swap设置对数据库性能的影响

游客 回复需填写必要信息