Windows에 도커 설치
윈도우즈에 도커를 설치하기는 쉽습니다.
https://hub.docker.com/editions/community/docker-ce-desktop-windows
위 사이트에 들어가신 후 Get Docker를 누르시면 됩니다.
그리고 설치 파일을 실행 후 설치하시면 됩니다.
다만 저의 경우 설치 후 실행하니 위와 같은 에러가 발생하였습니다.
위 에러는 도커가 윈도우즈에서 실행하기 위해서는 Hyper-V라는 옵션을 사용하는데 해당 옵션을 켜지 않아 발생한 에러입니다.
인터넷을 찾아보면 세 가지 방법을 제시를 하고 있는데, 저의 경우는 어떠한 방법도 되지 않았습니다만 일단 소개해 드리겠습니다.
A. 관리자 권한으로 실행한 명령 프롬프트에 dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All 입력
C:\Windows\system32>dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
배포 이미지 서비스 및 관리 도구
버전: 10.0.18362.1
이미지 버전: 10.0.18362.720
기능을 사용하도록 설정하는 중
[==========================100.0%==========================]
작업을 완료했습니다.
B. 관리자 권한으로 실행한 명령 프롬프트에 bcdedit /set hypervisorlaunchtype auto 입력
C:\Windows\system32>bcdedit /set hypervisorlaunchtype auto
작업을 완료했습니다.
C. 제어판 -> 프로그램 -> Windows 기능 켜기/끄기 -> Hyper-V 체크 해제 후 재부팅 -> 다시 Hyper-V 체크 후 재부팅
제 PC 기준으론 세 가지 방법이 모두 안됐지만 BIOS에 직접 설정을 해주니 해결 되었습니다.
D. HP 기준으로 BIOS SETUP -> Advanced 탭 -> System Options -> Virtualization Technology, Virtualization Technology for Directed I/O 둘 다 체크 후 재부팅
설치가 완료되었으면 윈도우즈 파워쉘을 실행하여 docker version 명령을 치시면 버전정보가 나오면서 정상적으로 설치가 완료된 것을 확인할 수 있습니다.
PS C:\Users\kube> docker version
Client: Docker Engine - Community
Version: 19.03.8
API version: 1.40
Go version: go1.12.17
Built: Wed Mar 11 01:23:10 2020
OS/Arch: windows/amd64
Experimental: false
...
Server: Docker Engine - Community
Engine:
Version: 19.03.8
API version: 1.40 (minimum version 1.12)
Go version: go1.12.17
Built: Wed Mar 11 01:29:16 2020
OS/Arch: linux/amd64
Experimental: false
...
쿠버네티스 활성화 하기
도커를 설치 후 쿠버네티스를 활성화 하기 위해서는 시스템 트레이에 도커를 클릭한 뒤 Settings를 클릭합니다.
그 뒤 Kubernetes 탭을 눌러 Enable Kubernetes, Deploy Docker Stacks to Kubernetes by default 두 개를 체크해주면 됩니다.
두 작업이 완료 되었다면 파워쉘에서 kubectl version으로 버전을
PS C:\Users\kube> kubectl version
Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5",
GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean",
BuildDate:"2019-10-15T19:16:51Z", GoVersion:"go1.12.10", Compiler:"gc",
Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.5",
GitCommit:"20c265fef0741dd71a66480e35bd69f18351daea", GitTreeState:"clean",
BuildDate:"2019-10-15T19:07:57Z", GoVersion:"go1.12.10", Compiler:"gc",
Platform:"linux/amd64"}
kubectl get pods -n kube-system으로 pod정보를 얻을 수 있습니다.
PS C:\Users\kube> kubectl get pods -n kube-system
NAME READY STATUS RESTARTS AGE
coredns-5c98db65d4-cxqzk 1/1 Running 0 5m
coredns-5c98db65d4-skssk 1/1 Running 0 5m
etcd-docker-desktop 1/1 Running 0 4m13s
kube-apiserver-docker-desktop 1/1 Running 0 4m
kube-controller-manager-docker-desktop 1/1 Running 0 4m4s
kube-proxy-l9rbh 1/1 Running 0 5m
kube-scheduler-docker-desktop 1/1 Running 0 4m
storage-provisioner 1/1 Running 0 3m58s