Dockerized Gitlab-runner가 Gitlab 컨테이너를 찾을 수 없습니다

Dockerized Gitlab-runner가 Gitlab 컨테이너를 찾을 수 없습니다

초보자는 여기 :)

회사의 로컬 네트워크에 Gitlab 인스턴스를 설정했습니다. 호스트 이름이 "인 전용 서버에서 실행되는 도커 컨테이너에서 호스팅됩니다.개발자 서버" 이 Gitlab 인스턴스는 "를 통해 접근할 수 있습니다.https://mycompanygit”, 네트워크 DNS가 mycompanygit을 devserver의 로컬 IP로 리디렉션하도록 설정되어 있기 때문입니다. devserver에는 mycompanygit에 대한 http 및 https 요청을 gitlab 컨테이너로 리디렉션하는 nginx 역방향 프록시라는 또 다른 컨테이너가 실행 중입니다. 이제 세 번째 컨테이너인 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와 함께 설정되었습니다. 그게 중요합니까?

정말 감사합니다 :) 확실하지 않은 경우 알려주세요. 다시 작성해 보겠습니다.

답변1

GitLab Runner는 도메인 이름 확인을 위해 Google의 DNS를 사용하고 Google의 DNS는 에 대해 아무것도 모르기 때문에 GitLab 인스턴스의 IP를 확인할 수 없습니다 mycompanygit. ERROR 줄의 끝을 확인하세요.

... 8.8.8.8:53에서 mycompanygit 조회: 해당 호스트가 없습니다.

mycompanygit가장 간단한 해결책은 회사 DNS에서 호스트용으로 사용한 IP 주소를 GitLab-runner 구성에 입력 하고 실행자용 DNS에 신경 쓰지 않는 것입니다.

관련 정보