在docker中添加主机redirect

我在虚拟机中使用gitlab。 我将使用gitlab-ci(在同一个VM中)和docker。

为了访问我的gitlab,我使用域git.local(redirect到我的计算机上的虚拟机,redirect到我的虚拟机中的127.0.0.1)。

当我启动testing时,testing返回:

致命:无法访问' http:// gitlab-ci-token:xxxxxx@git.local/thib3113/ESCF.git/ ':无法parsing主机'git.local'

所以我的问题是:如何将git.localredirect到容器IP? 我看到docker的arg -h <host> ,但我不知道如何告诉gitlab使用这个参数。 或者也许一个configuration告诉docker使用容器的DNS?

我看到: 我如何获得一个Docker Gitlab CI运行器来访问其父主机上的Git? 但同样的问题,我不知道如何添加参数:/。

根据GitLab CI Runner高级configuration ,您可以尝试在GitLab CI运行器中使用extra_hosts参数。 在/etc/gitlab-runner/config.toml

 [[runners]] url = "http://localhost/ci" token = "TOKEN" name = "my_runner" executor = "docker" [runners.docker] host = "tcp://<DOCKER_DAEMON_IP>:2375" image = "..." ... extra_hosts = ["localhost:192.168.0.39"] 

通过这个例子,当运行git的容器内部的git会尝试从localhost克隆时,它将使用192.168.0.39作为这个主机名的IP。