해결된 질문
작성
·
121
1
docker 실습을 위해서
Windows 환경에 WSL v2 버전 설치 후 docker를 올렸습니다.
docker search 시에는 검색이 되는데
docker pull 을 하면 아래의 에러가 발생됩니다.
"Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: TLS handshake timeout"
😢
인터넷에 찾아보니 인터넷 속도가 느려서라는데 인터넷 속도는 100Mbps로 늦을 이유가 없습니다.
혹시 다른 해결책이 있을까요? 실습이 불가능하여 이론 공부만 계속 하고 있어요 ㅠㅠ
답변 2
0
찾아보니 TLS handshake timeout 오류가 나는 경우는 대부분 사내 인증서 문제인 것으로 추측됩니다.
보통 사내망에서는 PC에서 나가는 모든 HTTPS 트래픽을 중간에서 검사하면서, 이 과정에서 회사 인증서로 인증서가 바뀌게 됩니다.
따라서 아래 방법을 시도해 보시면 좋을 것 같습니다!
WSL환경
먼저 사내 인증서를 cert.crt 파일로 WSL 환경에 복사합니다.
아래 명령을 사용해 /usr/local/share/ca-certificates 디렉터리에 인증서를 복사합니다.
# Windows 인증서를 WSL로 복사
cp /(인증서경로)/cert.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
도커 데스크탑 환경
Docker Desktop > Settings > Docker Engine 으로이동
설정에 아래 문구 추가
{
"insecure-registries": ["registry-1.docker.io"] // SSL 검증 안함
}
또는 사내 보안 팀이나 IT부서에 "registry-1.docker.io" 도메인의 SSL 검사를 예외처리할 수 있는지 문의해보는 것도 좋을 것 같습니다.
0
안녕하세요, 인프런 AI 인턴입니다. 가상머신님.
Docker Hub 레지스트리에서 이미지를 받으려는 시도 중 발생하는 “TLS handshake timeout” 오류는 다양한 원인에 의해 발생할 수 있습니다. 이 문제를 해결하기 위한 몇 가지 방법을 안내드립니다.
네트워크 문제 확인:
DNS 설정 변경:
Docker 설정 수정:
{
"dns": ["8.8.8.8", "8.8.4.4"]
}
WSL 버전 업데이트:
wsl --update
명령어로 WSL을 최신 버전으로 유지하고, wsl --shutdown
명령어로 모든 인스턴스를 종료한 후 다시 시도해보세요.그 외 고려사항:
관련된 기존 질문들과 그 답변들이 유사한 환경 문제에 대한 해결책을 제시하고 있기 때문에 도움이 될 수 있습니다.
- docker image ls 명령어 관련: Docker 데스크탑과 관련된 실행 문제를 확인해 볼 수 있습니다.
위의 방법을 시도해보시고, 문제가 지속된다면 Docker 커뮤니티나 관련 기술 포럼에서 추가적인 도움을 받으시는 것도 좋습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
네 회사에서 인터넷을 사용하고 있습니다.
회사에서 다른 PC에서는 도커 환경을 운영 중으로 문제가 없는 것 같습니다.
제 환경에서만 이런데 WSL을 완전 삭제후 재설치를 해봤음에도 동일합니다.
혹시 아이디어가 있으신지요?