[Ubuntu] docker 이미지 build 시 DNS resolve 문제 Computer Tip

Ubuntu 18.04 Desktop 버전에서 docker 를 설치하고,
배치 작업으로 apt-get install 작업을 하려고 하는데,

위와 같이 "Temporary failure resolving 'deb.debian.org'" 와 같은 오류가 나옵니다.
분명히 우분투 안에서는 아무런 이상이 없습니다.

구글링을 해 보니,

$ docker run busybox nslookup google.com
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
5f5dd3e95e9f: Pull complete
Digest: sha256:9f1c79411e054199210b4d489ae600a061595967adb643cd923f8515ad8123d2
Status: Downloaded newer image for busybox:latest
;; connection timed out; no servers could be reached

docker run busybox nslookup google.com 
명령으로 docker 내에서 DNS가 작동을 하는지 확인하는데 timeout 걸리고 안 됩니다.

결론은 제대로 DNS 서버 설정이 안되어서 발생한 문제인데,
해결 방법은

/etc/docker/daemon.json 파일을 생성하거나 내용에
다음을 추가하면 됩니다.

{
   "dns": ["10.211.55.1", "8.8.8.8"]
}

(위에 10.211.55.1 대신 다신이 참조하는 DNS 서버 주소로 대치합니다)
그리고 docker 서비스를 재시작하면,

sudo service docker restart

이전에 안되었던 docker 내에서 nslookup 이 되는 것을 확인할 수 있습니다.

$ docker run busybox nslookup google.com
Server:         10.211.55.1
Address:        10.211.55.1:53

Non-authoritative answer:
Name:   google.com
Address: 172.217.175.238


어느 분께는 도움이 되셨기를 ..

덧글

댓글 입력 영역

구글애드텍스트