Docker on WSL

Cloud/docker / /
728x90

1.    Docker ?

1)      컨테이너 기반의 오픈소스 가상화 플랫폼

2)      컨테이너(Container)?

     격리된 공간에 프로세스를 동작하게 하는 기술

     VM(Virtual Machine) 과 컨테이너의 차이점


 

                                  i.         VM

A.     OS를 가상화 하는 방식

B.      기존의 VMWare, VirtualBox, Hyper V 등이 있음

C.      비교적 사용법이 간단하지만 무겁고 느림

                                 ii.         Container

A.     OS 가상화가 아닌 프로세스를 격리하는 방식

B.      가볍고 동작이 빠름

C.      필요한 자원을 동적으로 할당 받아 처리 가능

2.    WSL 이란?

1)      Windows Subsystem for Linux 의 약자

2)      Windows OS 내 에서 hypervisor 기술을 사용해 Linux를 구동할 수 있도록 하는 기능

3.    설치

1)      Windows Terminal


 

     Windows Powershell 및 명령프롬프트(cmd.exe), WSL등을 탭으로 관리할 수 있도록 도와주는 프로그램

     1.0 버전이 정식 릴리즈되어 MS Store에서 다운로드 가능


 

2)      WSL 설치

     시스템 요구 사항

                                  i.         OS : Windows 10 버전 1607이상

                                 ii.         아키텍처 : x64

     제어판 > 프로그램 > 프로그램 및 기능 - Windows 기능 켜기/끄기 선택하고 Linux Windows 하위 시스템의 체크박스를 활성화하면 재부팅 되면서 설치


 

     MS Store 에서 원하는 리눅스 버전 설치


 

     설치하는데 몇 분이 소요되고 계정 생성 후 설치 완료

     WSL2로 버전 변경

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

 

     wsl 확인

wsl –l –v

# --help  옵션 확인 가능

 

# wsl2 버전 변경

wsl --set-version [설치 리눅스 이름2

 

#새로 설치되는 wsl 기능을 wsl2 버전으로 실행

wsl --set-default-version 2

 

3)      Docker 설치

     Windows docker로 설치 : https://hub.docker.com/editions/community/docker-ce-desktop-windows/ 에서 다운로드 하여 설치

     설치 확인 : Powershell 에서 docker 버전 확인

docker --version

 

4)      Docker 에서 wsl2 on Docker 로 옵션 변경

     Docker on WSL을 하는 이유

                                  i.         Docker는 기본적으로 Systemctl 을 사용할 수 없음

                                 ii.         어플리케이션 중 환경 구성 후 Service를 재실행해야 하는데 해당 옵션이 Systemctl 구성 시 이루어지는 옵션들이 있음

                                iii.         Host OSLinux인 경우에만 bash 관련 initsystemctl를 시도할 수 있도록 할 수 있음

                                iv.         따라서 WSL Linuxbash를 대체하여 systemctl 사용을 가능하도록 설정

     Docker on WSL 설정 방법

                                  i.         Docker Desktop을 연다.


 

                                 ii.         Docker Desktop 옵션에서 Use the WSL based engine 사용 체크


 

                                iii.         설치된 WSL 중 어떤 배포판에서 Docker를 사용할지 설정하면 된다.


 

4.    출처

1)      https://subicura.com/2017/01/19/docker-guide-for-beginners-1.html

2)      https://www.44bits.io/ko/post/wsl2-install-and-basic-usage

3)      https://webdir.tistory.com/541

4)      https://docs.microsoft.com/ko-kr/windows/wsl/install-win10

5)      https://docs.docker.com/docker-for-windows/

6)      https://docs.microsoft.com/ko-kr/windows/wsl/tutorials/wsl-containers

 

 

728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기