Docker의 Alpine apk가 이름 확인에 실패하고 빠졌습니다.

2285 단어 alpine도커dns

오류 메시지


ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.11/main: No such file or directory
WARNING: Ignoring APKINDEX.70f61090.tar.gz: No such file or directory
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.11/community: No such file or directory
WARNING: Ignoring APKINDEX.ca2fea5b.tar.gz: No such file or directory
2 errors; 15 distinct packages available



생각한 것



분명히 Alpine 측의 문제일 거라고 생각했는데,
이 Issue가 상당히 전부터 있었던 것 같고,

여기서 굉장히 고조되고 있습니다.
무엇이 원인인지 잘 모르겠지만,http://dl-cdn.alpinelinux.org/alpine/v3.11/community직접 curl로 잡으러 가면 잡을 수 있네요.
그럼에도 불구하고 Error Message는 No such file or directory입니다.

라는 것은,
- 알파인 측의 DNS가 망가졌는지
- Docker 컨테이너의 내부 네트워크가 이상한가?

라고 생각할 것 같습니다.

글쎄, Docker에서 yum이나 apt로 파일은 매우 이것 때문에, 이상하지 않다고 생각합니다만, 일단 Docker의 호스트를 찾는 구조를 조사해 보겠습니다.

Docker 외부와의 통신 구조가 간결하고 알기 쉽게 쓰여져 있네요.

이 경고는 Docker 컨테이너가 로컬 DNS 서버를 사용할 수 없기 때문입니다. 대신 Docker는 기본적으로 외부 네임 서버를 사용합니다.

과연. 아무쪼록 부디 느낌입니다만, 사용하고 있는 DNS 서버는 다릅니다.

로컬만 있는 DNS와 별개인 것 같고, 이 네임 서버에 도달할 수 없어 이끼 하고 있는 설을 우선 생각해 보십니까.

어쨌든 Docker 이미지 내부에서 어떻게 이름 해석하고 있는지 알아보고 싶습니다. 어디에 DNS 설정 파일이 있는지. . .

열심히 조사했는데, 아무래도 /etc/resolv.conf가 참조하고있는 DNS의 주소를 설정하는 장소 같았으므로 확인하면
nameserver 8.8.8.8
nameserver 8.8.4.4

되었습니다.

로컬 맥은
#
# macOS Notice
#
# This file is not consulted for DNS hostname resolution, address
# resolution, or the DNS query routing mechanism used by most
# processes on this system.
#
# To view the DNS configuration used by this system, use:
#   scutil --dns
#
# SEE ALSO
#   dns-sd(1), scutil(8)
#
# This file is automatically generated.
#
nameserver 192.168.254.2
nameserver 8.8.8.8


192쪽이 일반적으로 로컬이 참조하고 있는 DNS일 것이다라는 느낌
8.8.8.8은 Docker에 의해 추기된 것이지만,
어쩌면 여기에 도착하지 않았어요.
그러므로
nameserver 192.168.254.2
nameserver 8.8.8.8
nameserver 8.8.4.4


보면,

잘 작동했습니다

8.8.8.8부터 Alpine이 보이지 않는 것은 결국 Alpine 측이 나쁘다는 것이 좋습니까? ? (잘 모르겠다)

좋은 웹페이지 즐겨찾기