Здесь новичок :)
Я установил экземпляр Gitlab в локальной сети моей компании. Он размещен в контейнере докеров, запущенном на выделенном сервере с именем хоста « devserver ». Этот экземпляр Gitlab доступен по адресу « https: // mycompanygit », потому что сетевой DNS настроен на перенаправление mycompanygit на локальный IP-адрес devserver. На devserver работает еще один контейнер, обратный прокси-сервер nginx, который перенаправляет запросы http и https для mycompanygit в контейнер gitlab. Теперь я хотел бы добавить третий контейнер, экземпляр Gitlab-runner. Итак, я запускаю следующую команду, взятую отсюда.
docker run --rm -t -i -v /srv/gitlab-runner/config:/etc/gitlab-runner --name gitlab-runner gitlab/gitlab-runner register \
--non-interactive \
--executor "docker" \
--docker-image alpine:3 \
--url "https://mycompanygit" \
--registration-token "MY_REGISTRATION_TOKEN" \
--description "docker-runner" \
--tag-list "docker,aws" \
--run-untagged \
--locked="false"
Я получаю:
ERROR: Registering runner... failed runner=i3ygCNvW status=couldn't execute POST against https://mycompanygit/api/v4/runners: Post https://mycompanygit/api/v4/runners: dial tcp: lookup mycompanygit on 8.8.8.8:53: no such host
PANIC: Failed to register this runner. Perhaps you are having network problems
Как мне заставить Gitlab-runner увидеть экземпляр Gitlab? Я даже не знаю, связано ли это с Docker или Gitlab?
Также: экземпляры gitlab и nginx были настроены вместе с docker-compose, имеет ли это значение?
Большое спасибо :) Пожалуйста, скажите мне, если я не ясно, я попытаюсь переформулировать
GitLab Runner не может разрешить IP для экземпляра GitLab, потому что он использует DNS Google для разрешения доменных имен, а DNS Google ничего не знает о mycompanygit
. См. Конец строки ОШИБКИ:
... поиск mycompanygit на 8.8.8.8:53: нет такого хоста
Простейшим решением было бы ввести IP-адрес, который вы использовали в DNS вашей компании для хоста mycompanygit
в конфигурацию GitLab-runner и не беспокоиться о DNS для runner.