问题:
用docker启动gitlab-runner,注册runner 时报错:PANIC: Failed to register the runner. You may be having network problems。
不仅如此,我用gitlab-runner verify命令,也是报错:ERROR: Verifying runner... failed
原因:
就是gitlab-runner 无法连接到gitlab。
网上只有两个说法,一个是防火墙没关,我关闭了iptables,检查了firewall之后发现还是这样。然后还有一种说法是 gitlab和 gitlab-runner版本不兼容,我这边不存在这个问题,因为我是重启了gitlab后才出现这个问题,之前是好的。
后来我又看报错,dial tcp 172.17.0.2:80: connect: connection refused。我发现一个问题,我在gitlab-runner里curl http://172.17.0.2 失败了,这个IP地址是 gitlab-runner 容器的IP,runner是没有80端口的,它怎么会去连接自己的80端口呢,尴尬……
解决方法:
然后我查了一下gitlab 的容器IP,是172.17.0.3。然后我把 config.toml 里的url,改成gitlab容器的IP地址,再运行gitlab-runner verify 就不报ERROR: Verifying runner... failed错误了。
再次运行gitlab-runner register 注册runner,不报错了,问题解决。还是不够了解,知识空缺。