Docker 란?
Docker는 컨테이너 기반 가상화 기술을 사용하여 애플리케이션을 실행하고 관리하는 플랫폼입니다.
좀 더 쉽게 설명하자면, 애플리케이션을 실행하는 가상 환경을 만들어주는 도구입니다. 이 가상 환경을 우리는 컨테이너라고 부릅니다.
Docker를 사용하면 개발자들은 애플리케이션과 그 환경을 하나의 패키지로 만들어서 배포할 수 있습니다. 이를 통해 애플리케이션을 더욱 쉽게 이식하고, 확장할 수 있으며, 협업도 용이해집니다.
예를 들어, A라는 개발자가 만든 애플리케이션을 B라는 개발자가 운영하기 위해서는 B가 A가 만든 환경과 설정을 재현해야 합니다. 그러나 이러한 작업은 굉장히 복잡하고 시간이 많이 걸릴 수 있습니다.
하지만 Docker를 사용하면 A가 만든 애플리케이션과 그 환경을 하나의 패키지인 컨테이너로 만들고, B는 이 컨테이너를 그대로 실행하여 애플리케이션을 운영할 수 있습니다. 이를 통해 애플리케이션 배포 과정이 간소화되고, 운영자들은 빠르게 애플리케이션을 배포하고 운영할 수 있게 됩니다.
설치 전 요구사항 확인하기
1. Windows 사양 확인
Docker를 설치하기 전 Hyper-V가 활성화되어 있어야 합니다. Hyper-V 기능은 Windows 10 Pro 에디션에서만 제공합니다. Windwos 10 Home 에디션의 경우 WSL2(Windows Subsystem for Linux 2)를 설치해야 합니다.
Windows 사양은 설정 → 시스템 → 정보에서 확인할 수 있습니다. 저는 Windows 10 Home 버전이어서 WSL2 방식으로 설치해 보겠습니다.
Windows 10 Pro 에디션 | Windows 10 Home 에디션 |
- WSL2 기반 Docker Engine 사용 가능 - Hyper-V 기반 Docker Engine 사용 가능 |
- WSL2 기반 Docker Engine 사용 가능 |
2. WSL2 설치하기
1) Windows PowerShell을 '관리자 권한'으로 실행합니다.
2) 아래 두 명령어를 실행합니다.
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
3) 컴퓨터를 재부팅합니다.
4) 아래 명령어를 실행해 WSL을 설치합니다.
wsl --install
3. Linux 설치
1) wsl --list --online을 실행해 사용 가능한 배포 목록을 확인하고 wsl --install -d Ubuntu를 실행해 Ubuntu를 설치합니다.
wsl --list --online
wsl --install -d Ubuntu
2) 아래와 같이 Ubuntu 화면이 뜨면 username, password를 설정합니다.
4. WSL2 업그레이드
1) Linux커널 업데이트 패키지를 다운로드 받아 설치합니다.
https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
2) 아래 명령어를 실행해 WSL2로 업그레이드를 합니다.
wsl --set-version Ubuntu 2
3) 아래 명령어를 실행해 설치 버전이 2로 뜨는지 확인합니다.
wsl -l -v
Docker 설치하기
아래 링크에 접속해 파일을 다운받아 설치합니다.
https://www.docker.com/products/docker-desktop/
Download Docker Desktop | Docker
Docker Desktop is available to download for free on Mac, Windows, or Linux operating systems. Get started with Docker today!
www.docker.com
설치 중간에 Configuration 항목은 체크합니다.
Docker 설치가 완료되었으면 마지막으로 Settings에 들어가서 아래그림과 같이 체크가 되어있는지 확인합니다. 체크되어 있지 않다면 체크해 주고 저장합니다.