问题描述

gitlab-runner运行job的时候一直报错:

fatal: unable to access 'https://xxx.xxx.com/xxx/xxx.git/': Failed to connect to xxx.xxx.com port 443: Operation timed out

连接gitlab的443端口超时。说明域名未知,或者它指向的IP没有443监听,就会收到这样的超时。

解决过程:

1、先在runner的宿主机ping一下gitlab的域名,没啥问题,可以ping通,说明不是宿主机的问题。还是runner的docker里的问题。
2、在原有的gitlab-runner的配置文件config.toml 中添加如下行:

extra_hosts = ["xxx.xxx.xxx:192.168.1.0"]
列表前面是访问gitlab的域名,后面是gitlab的IP地址

配置文件添加完这行信息以后,重启gitlab-runner服务。
在重新构建任务,发布成功,问题解决。