Gitlab CI 更新需要2分钟
Gitlab CI takes 2min to update
我有一个自托管的 gitlab 实例和一个带有几个使用 docker 作为执行者的 gitlab 运行器的服务器。
当一个新的 CI-job 开始时,我总是需要至少 2 分钟才能看到结果,但是当我检查创建的容器的 docker 日志时,它已经完成了20s 后的构建。问题出在哪里?
我的config.toml:
concurrent = 10
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "Runner 02"
url = "https://gitlab.<myUrl>.ch/"
token = "myToken"
executor = "docker"
environment = ["DOCKER_DRIVER=overlay2"]
[runners.docker]
tls_verify = false
image = "docker"
privileged = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/root/.ssh:/root/.ssh", "/cache", "/root/.m2:/root/.m2"]
shm_size = 0
该跑者已注册为团体跑者。
问题出在Gitlab runner对Gitlab server的访问上。
当 Runner 无法向服务器发送更新时,服务器会在 ~2 分钟后拉取更新。在我的例子中,防火墙阻止了从运行器到服务器的调用。切换到忽略防火墙的内部名称服务器解决了这个问题。
我有一个自托管的 gitlab 实例和一个带有几个使用 docker 作为执行者的 gitlab 运行器的服务器。
当一个新的 CI-job 开始时,我总是需要至少 2 分钟才能看到结果,但是当我检查创建的容器的 docker 日志时,它已经完成了20s 后的构建。问题出在哪里?
我的config.toml:
concurrent = 10
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "Runner 02"
url = "https://gitlab.<myUrl>.ch/"
token = "myToken"
executor = "docker"
environment = ["DOCKER_DRIVER=overlay2"]
[runners.docker]
tls_verify = false
image = "docker"
privileged = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/root/.ssh:/root/.ssh", "/cache", "/root/.m2:/root/.m2"]
shm_size = 0
该跑者已注册为团体跑者。
问题出在Gitlab runner对Gitlab server的访问上。
当 Runner 无法向服务器发送更新时,服务器会在 ~2 分钟后拉取更新。在我的例子中,防火墙阻止了从运行器到服务器的调用。切换到忽略防火墙的内部名称服务器解决了这个问题。