Development/Docker

[Docker] 도커 다운로드와 설치 / 컨테이너 실행 및 중지하기

양선규 2024. 9. 26. 16:49
728x90
반응형

도커 홈페이지

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

 

Get Started | Docker

Get started with Docker Desktop and join millions of developers in faster, more secure app development using containers and beyond.

www.docker.com

 

우측 중앙 Download 버튼을 눌러서 다운로드 받는다. 본인 CPU, 운영체제 등에 맞게 다운로드 하면 된다.

난 Window 운영체제에 AMD CPU라서 저렇게 다운받았다.

 

다운받은 후 설치는 쉽다. 권장사항으로 쭉쭉 설치하고 마지막에 재부팅을 한번 하면 끝이다.

설치가 끝난 후 설문조사가 있는데 대충 체크하고 넘어가면 바로 도커를 사용해볼 수 있다.

 

아 그리고 중간에 hosts 파일이 변조되었다고 뭐라 뜰 수도 있는데 그냥 그대로 진행하면 된다. 변조된 거 유지한 상태로 그냥 진행하라는 뜻이다. 도커에서 한 거니까.

 

도커

 

설치가 끝나면 대략 이런 화면이 나온다. GUI로 컨테이너를 실행시킬 수도 있지만 난 CLI가 편하니 CLI로 하겠다.

 

Git Bash 실행

 

리눅스 명령어 사용을 위해 Git Bash를 실행한다.

 

컨테이너 다운로드 및 실행

 

docker run -d -p 8080:80 docker/welcome-to-docker 

 

컨테이너를 실행하는 명령어다. 뜻은 아래와 같다.

docker run -> 컨테이너 실행

-d -> 백그라운드에서 실행

-p 8080:80 -> 호스트의 8080포트로 오는 요청을 도커 80번 포트로 포워딩(보낸다)

docker/welcome-to-docker -> 실행할 컨테이너 이미지 이름

 

만약 해당 이미지가 로컬에 존재하지 않는다면 docker hub에서 자동으로 다운로드한 후 실행한다.

 

Digest는 무결성 검사를 위한 해시값을 의미하며,

Status 부분은 이미지를 성공적으로 다운로드 했다는 걸 의미한다.

 

컨테이너 상태 확인

 

docker ps

 

실행중인 컨테이너 상태를 확인하는 명령어다.

CONTAINER ID -> 컨테이너 고유 id

IMAGE -> 컨테이너에서 실행중인 이미지 이름

COMMAND -> 컨테이너가 실행될 때 사용한 명령어. 생략된 상태이다

CREATED -> 컨테이너가 생성된 시간

STATUS -> 현재 상태, 3분 동안 실행 중

PORTS -> 호스트 8080포트로 오는 것을 도커 80번(TCP)포트로 보낸다

NAMES -> 컨테이너 이름 ( 임의로 정해진다 )

 

컨테이너가 정상적으로 실행되었으니 웹으로 접속하여 확인해 보자.

 

접속

 

localhost:8080 

또는

127.0.0.1:8080

으로 접속하면 된다. localhost와 127.0.0.1 모두 호스트 자기 자신을 의미하는 루프백 주소이다. 즉, 내 컴퓨터의 8080포트로 접속한 것이다. 아까 호스트 8080포트로 접속하면 도커 80번 포트로 포워딩된다고 했으니, 결과적으로 도커의 80번(HTTP, 웹) 포트로 접속하여 웹 사이트에 접속 성공한 것이다.

 

우리가 처음에 다운로드하고 실행한 docker/welcome-to-docker 이미지는 이렇게 환영 메시지를 담은 간단한 웹사이트를 서비스하는 이미지이다. 따라서 이런 웹사이트가 출력되었다.

 

 

컨테이너가 생성됨

 

docker desktop GUI 프로그램에서 확인했을 때도 컨테이너가 가동중인 것을 알 수 있다. Running이라고 쓰여 있다.

컨테이너는 종료시키지 않으면 백그라운드에서 끝없이 가동된다. 사용하지 않을 것이라면 컨테이너를 종료시키자.

 

 

컨테이너 종료

 

docker stop {컨테이너 고유 ID}

 

이 명령어도 해당 컨테이너를 종료시킬 수 있다.

 

위쪽 docker ps 결과를 보면 컨테이너 ID가 7d20bc1e3dd9 인걸 확인할 수 있다. 사실 저거보다 훨씬 더 긴데 저것도 생략된 것이다. 컨테이너를 종료하려면 이 고유 ID를 입력해야 하는데, 전부 입력할 필요 없이 고유하게 구분할 수 있도록 적당히 적어주면 된다. 나는 7d20b 5글자만 적었다. Git의 커밋 ID와 비슷하다.

 

 

종료되었다

 

다시 docker ps 명령어로 확인해 보면 실행중인 컨테이너가 없는 것을 확인할 수 있다.

 

Exited

 

docker desktop에서는 Exited로 표기되는 것을 확인할 수 있다.

728x90
반응형