如何configurationgitlab-ci转轮克隆从正确的http url

我在单独的容器中运行gitlab和runner。 Gitlab是本地端口80端口,我可以克隆

http://username:password@172.17.0.1/root/citest.git 

172.17.0.1是我的盒子上的docker0接口的ip然而,当运行任何pipe道时,我得到了可怕的“你似乎克隆了一个空的存储库”的问题。 调查显示,跑步者有以下偏远地区:

 [remote "origin"] url = http://gitlab-ci-token:jEZ_WtWKR4LaP63Qrk_E@b4b32c3cc3e7/root/citest.git 

b4b32c3cc3e7是gitlab-ce容器的id

我想这是因为我在容器上运行gitlab,我没有configuration特定的域名?

如果我的猜测是正确的,是否有任何环境variables可以在我的gitlabci.yml中设置,以调整gitlab服务器的位置?

否则,有什么办法可以让跑步者知道gitlab的ip在改变吗?

以上是有点专业化,也许混淆,所以这里有一些背景:我试图让学生学习git,ci / cd和其他devops-y做法的devops实验室。 我只能在我的笔记本电脑上随时部署这个ad-hoc,然后让他们连接到我的电脑上。 在这种情况下,我没有看到任何方式来设置一个域或任何静态的gitlab而不是一个容器IP,对不对?

所以,而不是试图说服两个容器互相交stream我用docker撰写,下面是我的docker-compose.yml

 version: "2" services: gitlab: image: 'gitlab/gitlab-ce:latest' restart: always environment: GITLAB_OMNIBUS_CONFIG: | external_url "http://gitlab:80" gitlab_rails["gitlab_shell_ssh_port"] = 2224 gitlab_rails["lfs_enabled"] = true gitlab_rails["time_zone"] = "CET" gitlab_rails["gitlab_email_enabled"] = false ports: - '22:22' - '80:80' - '443:443' volumes: - 'gitlab_config:/etc/gitlab' - 'gitlab_logs:/var/log/gitlab' - 'gitlab_data:/var/opt/gitlab' gitlab-runner: image: 'gitlab/gitlab-runner:latest' restart: always volumes: - 'runner_config:/etc/gitlab-runner' - '/var/run/docker.sock:/var/run/docker.sock' depends_on: - gitlab links: - gitlab volumes: gitlab_config: gitlab_logs: gitlab_data: runner_config: 

这使得gitlab可以在本地主机上访问,但跑步者也可以在http:// gitlab上看到gitlab