웹 개발

docker와 리눅스 명령어 실습1

younghlee 2025. 6. 22. 23:31

WSL와 Docker의 차이

 

WSL(Windows Subsystem for Linux)을 통해 Ubuntu 등 리눅스 환경을 사용할 수 있다면, 그 자체로도 충분히 리눅스 실습이 가능합니다.

 

그러나 Docker(도커)를 활용하면 WSL과는 또 다른 방식으로 리눅스 환경을 다뤄볼 수 있습니다.

Docker는 내부적으로는 가상화 기술(Hyper-V)을 사용하지만, 전통적인 가상 머신과 달리 운영체제의 커널을 공유하고 필요한 부분만 격리하는 경량화된 컨테이너 방식을 채택하고 있습니다.

 

WSL과 Docker의 차이점

WSL
전체 리눅스 운영체제를 가상 머신(VM) 형태로 Windows 위에 실행하는 방식입니다.

Docker
는 리눅스 커널을 공유하면서, 필요한 애플리케이션 환경만 독립적으로 실행하는 컨테이너(Container) 방식입니다.

 

WSL

항목 WSL
구조 전체 리눅스 배포판 (가상 머신)
실행 방식 리눅스 환경을 직접 사용하는 느낌
무게감 상대적으로 무거움
활용 용도 리눅스 실습, 명령어 사용 등
WSL은 Hypervisor 위에 게스트 OS(예: Ubuntu)를 올리고, 그 위에서 리눅스 앱과 라이브러리를 실행합니다.

윈도우 안에 가상의 리눅스 환경을 만드는 구조로, 리눅스 명령어와 프로그램을 사용할 수 있게 해줍니다.

 

Docker

항목 Docker
구조 리눅스 커널 공유 (컨테이너)
실행 방식 특정 앱/환경만 독립적으로 실행
무게감 경량화되어 빠름
활용 용도 앱 배포, 환경 격리, 자동화 등

 

Docker는 Host OS의 커널을 공유하고, 각 컨테이너는 필요한 라이브러리와 앱만 포함합니다.

이로 인해 가볍고 빠르게 실행되지만, 완전한 OS 격리가 아니므로 보안과 커널 호환성에 유의해야 합니다.

Docker설치 및 확인 방법

여기서는 docker로 우분투 컨테이너를 실행하고 명령어 실습을 진행해 보겠습니다. 만약 여러분이 Windows를 사용 중이라면 docker Desktop을 설치해 GUI로 도커를 사용할 수도 있지만, 터미널에서 명령어로 도커를 사용하겠습니다.

 

윈도우즈의 도커는 WSL을 사용하기에 docker Desktop 설치 전 WSL을 활성화해야 합니다. 도커 설치 방법은 OS마다 다르니, 공식 docker 사이트의 가이드를 참고해 설치해 주세요. 윈도우즈의 docker Desktop을 설치하면 기본적으로 docker 엔진과 함께 GUI 환경이 갖춰집니다.

 

https://www.docker.com/

 

Docker: Accelerated Container Application Development

Docker is a platform designed to help developers build, share, and run container applications. We handle the tedious setup, so you can focus on the code.

www.docker.com

 

docker 실행

설치가 완료되었다면, docker를 통해 우분투 컨테이너 하나를 실행해보도록 하겠습니다.

터미널(Windows라면 PowerShell 또는 CMD, 혹은 WSL 터미널)에서 다음 명령을 입력합니다.

docker run -it --privileged -d --name ubuntu ubuntu:22.04

 

 

실행 후, 아래와 같은 화면이 나타난다면, Ubuntu 컨테이너가 정상적으로 실행된 것입니다.

 

 

이제 해당 명령의 의미를 하나씩 풀어보도록 하겠습니다. 

docker run 
도커 컨테이너를 실행
-it
셸 사용을 위한 옵션   
  -i: 표준 입력 연결   -t: TTY(터미널 출력) 할당
--privileged
컨테이너에 호스트 자원 접근 권한을 부여 (일반적으론 필요 x , 여기서는 WSL/Hyper-V 환경에서 몇 가지 제약 해소를 위해 사용)
-d 
백그라운드 실행(-d를 안 쓰면 바로 그 컨테이너의 콘솔에 붙어버림. 실행되는 컨테이너의 터미널로 커서가 이동)
--name ubuntu
컨테이너 이름을 "ubuntu"로 지정 (지정하지 않으면 자동 이름 생성)
ubuntu
22.04사용할 Ubuntu 22.04 이미지 지정 (없으면 자동 다운로드)

 

명령을 실행하면 도커가 Ubuntu 이미지를 다운로드한 후 컨테이너를 띄울 것입니다.

 


다음에 다룰 사항

이번에 다룬 내용으로는 docker와 리눅스 명령어 실습을 다뤄봤습니다. 내용이 많아 다음 글에서도 진행해보도록 하겠습니다.