컨테이너/도커

도커 설치 및 실행하기(For Windows)

비니화이팅 2022. 10. 19. 22:21

➡️ Docker for Windows는 Hyper-V를 사용하여 동작하기 때문에 우선 Hyper-V를 활성화 해야한다.

- 제어판 > 프로그램 및 기능 > Windows 기능 켜기/끄기 > Hyper-V 항목 체크

 

윈도우 환경에서 도커 설치해보기

1. 아래 사이트 참고하여 WSL(Windows Subsystem for Linux) 설치

https://docs.microsoft.com/ko-kr/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package

 

이전 버전 WSL의 수동 설치 단계

wsl install 명령을 사용하지 않고 이전 버전의 Windows에 WSL을 수동으로 설치하는 방법에 대한 단계별 지침입니다.

learn.microsoft.com

 

 

2. 아래 사이트에서 도커 다운로드

https://www.docker.com/get-started

 

Developers - Docker

Developer productivity tools and a local Kubernetes environment.

www.docker.com

 

2. Settings > General에서 Use the WSL 2 based engine 체크

 

3. Ubuntu 활성화

 

[참고] 클라이언트 PC와 파일 공유

- Settings > Shared Drives

 

도커 실행해보기

- docker container run <이미지명> <컨테이너 내에서 실행할 명령> : 도커 실행 명령어

- 이미지:latest는 최신 버전의 이미지를 취득한다는 뜻임

C:\\>docker container run ubuntu:latest /bin/echo 'Hello world!'
Unable to find image 'ubuntu:latest' locally
latest: Pulling from library/ubuntu
08c01a0ec47e: Pull complete
Digest: sha256:669e010b58baf5beb2836b253c1fd5768333f0d1dbcb834f7c07a4dc93f474be
Status: Downloaded newer image for ubuntu:latest
'Hello world!'

C:\\>docker container run ubuntu:latest /bin/echo 'Hello world!'
'Hello world!'

docker container run 명령 실행 시 해당 이미지가 로컬환경에 있는지 확인 후 없다면 도커 리포지토리에서 도커 이미지를 다운로드

- 첫 번재 명령어 실행 시 도커 이미지 다운로드에 시간이 소요되지만, 두 번째부터는 로컬 환경에 다운로드(로컬 캐시)된 도커 이미지를 바탕으로 도커 컨테이너를 시작

 

도커 기본 명령어

- 도커는 클라이언트/서버 아키텍처를 채택하고 있어서 도커 클라이언트와 도커 서버가 Remote API를 경유하여 연결되어 있음

- 도커 명령어는 서버로 보내져 처리됨

- docker version : 도커 버전 확인

- docker system info : 도커 실행환경의 상세 설정 표시(컨테이너 수, 스토리지 드라이버 종류 등)

- docker system df-v : 도커가 사용하고 있는 디스크의 이용 상황 표시

 

Nginx 실행해보기

1. docker pull <도커 이미지명> : 이미지 다운로드

C:\\>docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
5eb5b503b376: Pull complete
1ae07ab881bd: Pull complete
78091884b7be: Pull complete
091c283c6a66: Pull complete
55de5851019b: Pull complete
b559bad762be: Pull complete
Digest: sha256:2834dc507516af02784808c5f48b7cbe38b8ed5d0f4837f16e78d00deb7e7767
Status: Downloaded newer image for nginx:latest
docker.io/library/nginx:latest

 

2. docker image ls : 이미지 확인

C:\\>docker image ls
REPOSITORY          TAG       IMAGE ID       CREATED        SIZE
docker101tutorial   latest    bbd7bd738e6b   2 hours ago    28.8MB
ubuntu              latest    54c9d81cbb44   9 days ago     72.8MB
nginx               latest    c316d5a335a5   2 weeks ago    142MB
alpine/git          latest    c6b70534b534   2 months ago   27.4MB

 

3. docker container run --name <컨테이너 이름> -d -p <포트:포트> <도커이미지> : 컨테이너 실행

C:\\>docker container run --name webserver -d -p 80:80 nginx
5189780d052a1a1b1f460bbd9f11f08553b1e08245000f2ea0c80a0a5c03b6fb

nginx 이미지를 사용하여 webserver라는 이름의 도커 컨테이너를 기동

- 브라우저에서 HTTP에 대한 액세스를 허가하기 위해 -p 옵션을 붙여 컨테이너가 보내는 전송을 허가

- 명령 실행 시 컨테이너 ID 확인 가능

 

4. 컨테이너 작동 확인(Nginx 작동 확인)