You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同一Ubuntu机器GitLab CI用localhost失败:连接被拒绝

解决Docker类型GitLab Runner流水线连接拒绝问题

问题根源

Docker Runner运行在独立容器内,容器环境中的127.0.0.1指向容器自身,而非宿主机上的GitLab服务,因此会出现端口连接被拒绝的报错。

修复方案

  • 替换项目克隆地址:
    在项目的.gitlab-ci.yml配置或GitLab项目设置中,将克隆地址里的127.0.0.1替换为宿主机的实际IP或域名。例如把http://127.0.0.1/gitlab-instance-0daf0d62/car-assembly-line.git改成http://[宿主机实际IP]/gitlab-instance-0daf0d62/car-assembly-line.git。

  • 配置Runner网络模式为宿主机模式:
    编辑GitLab Runner的配置文件(默认路径/etc/gitlab-runner/config.toml),在[runners.docker]段添加network_mode = "host",让容器直接使用宿主机网络,这样容器内的127.0.0.1就能指向宿主机:

    [[runners]]
      name = "Docker Runner"
      url = "http://[宿主机实际IP]/gitlab/"
      token = "你的Runner令牌"
      executor = "docker"
      [runners.docker]
        tls_verify = false
        image = "ubuntu:latest"
        privileged = false
        volumes = ["/cache"]
        network_mode = "host"  # 新增此配置
    

    修改完成后重启Runner服务:

    sudo gitlab-runner restart
    
  • 检查GitLab服务状态:
    确认宿主机上的GitLab服务正常运行,且80端口未被其他进程占用:

    sudo gitlab-ctl status
    sudo netstat -tulpn | grep :80
    

验证

重新触发流水线,确认代码克隆步骤可正常连接GitLab仓库。

内容的提问来源于stack exchange,提问作者Aravindasamy Palanisamy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 19:32:02