
"Windows Installer용 Docker"를 다운로드하고 Windows 10 컴퓨터에서 "Linux Container" 옵션을 사용하여 설치 프로그램을 실행합니다. 설치가 성공적으로 진행되었습니다. Hyper-V가 활성화되었습니다. 또한 가상화가 활성화되었습니다.
docker --version 명령을 성공적으로 실행할 수 있었습니다. 하지만 "docker run hello-world"를 실행하려고 하면 아래와 같은 오류가 발생합니다.
로컬에서 'hello-world:latest' 이미지를 찾을 수 없습니다. C:\Program Files\Docker\Docker\Resources\bin\docker.exe: 데몬의 오류 응답: Gethttps://registry-1.docker.io/v2/library/hello-world/manifests/latest: 연결을 기다리는 동안 요청이 취소되었습니다(헤더를 기다리는 동안 Client.Timeout이 초과되었습니다). 'C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help'를 참조하세요.
Windows 컨테이너로 옵션 전환을 했을 때 도커 이미지를 성공적으로 실행할 수 있었습니다. 그러나 다시 Linux 컨테이너로 전환하면 동일한 문제에 직면하게 됩니다.
설정에서 DNS 8.8.8.8을 확인하고 도커를 다시 시작해 보았지만 지금까지는 도움이 되지 않았습니다.
또한 Windows 컨테이너로 전환하고 Dockerfile을 실행하려고 하면 아래 오류가 발생합니다.
Docker 데몬 113.2kB에 빌드 컨텍스트 보내기 1/4단계: java:8에서 8: 라이브러리/자바 이미지에서 가져오기 운영 체제 "linux"는 이 플랫폼에서 사용할 수 없습니다.
도와주세요.
답변1
최신 버전을 설치하면 문제가 해결되었습니다. Linux와 Windows 모두에서 컨테이너를 실행할 수 있습니다. hello-world 이미지가 실행 중입니다.
나는 다음 단계를 수행했습니다.
1. Uninstall Docker for Desktop.
2. Remove docker folder and files from AppData : Local and Roaming.
3. Remove docker folder from Program data
4. Remoce .docker inside <C:\Users\UserName\> folder.
5. Remove temp files
6. Download latest version (my version : 2.3.0.2)
7. Install Docker
8. Enable Kubernetes.
이제 도커 이미지를 빌드하고 컨테이너를 실행하고, kubernetes를 사용하고, 오케스트레이션을 통해 모든 것이 잘 실행될 수 있습니다. 하지만 저는 Linux 컨테이너를 사용하고 있습니다. 나는 Windows 컨테이너를 원하지 않기 때문에.