본문 바로가기
Infra/Docker

도커를 배우자02 - 설치 및 실행

by 윤루트 2021. 11. 17.

m1 맥북에 도커 설치하기

brew install --cask docker

 

도커 설치 중
도커 설치 완료

Launchpad에 있는 도커 아이콘 클릭

 

서비스 동의

Accept 시 도커 실행 성공!

도커 첫 실행

설치 확인하기

docker version

도커 버전

Client 와 Server 정보가 정상적으로 출력되었다면 설치가 완료된 것이다.

 

특이한 점은 클라이언트와 서버로 나뉘어져 있는 것이다. 도커는 하나의 실행 파일이지만, 실제로 클라이언트와 서버 역할을 각각 할 수 있다. 도커 커맨드를 입력하면 도커 클라이언트가 도커 서버로 명령을 전송하고 결과를 받아 터미널에 출력해 준다.

 

기본값이 도커 서버의 소켓을 바라보고 있기 때문에, 사용자는 의식하지 않고 마치 바로 명령을 내리는 것 같은 느낌을 받는다. 이러한 설계가 mac이나 windows의 터미널에서 명령어를 입력했을 때 가상 서버에 설치된 도커가 동작하는 이유다.

 

컨테이너 실행하기

도커를 실행하는 명령어는 다음과 같다.

docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]

다음은 자주 사용하는 옵션을 나타낸 표이다.

옵션 설명
-d detached mode, 흔히 말하는 백그라운드 모드
-p 호스트와 컨테이너의 포트를 연결 (포워딩)
-v 호스트와 컨테이너의 디렉토리를 연결 (마운트)
-e 컨테이너 내에서 사용할 환경변수 설정
–name 컨테이너 이름 설정
–rm 프로세스 종료시 컨테이너 자동 제거
-it -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션
–link 컨테이너 연결 [컨테이너명:별칭]

 

ubuntu 16.04 container

ubuntu 16.04 컨테이너를 생성하고 내부로 들어가 보자.

docker run ubuntu:16.04

ubuntu 16.04 설치 완료

1. run  명령어를 사용하면 사용할 이미지가 저장되어 있는지 먼저 확인한다.

2. 없다면 다운로드(pull)를 한 후 컨테이너를 생성(create)하고 시작(start)한다.

3. 이것은 별다른 명령어를 전달하지 않았기 때문에 컨테이너를 생성한 후 곧바로 종료한다. 컨테이너는 프로세스이기 때문에 실행 중인 프로세스가 없으면 컨테이너는 종료된다.

 

/bin/bash 명령어를 입력하여 컨테이너 실행하기

docker run --rm -it ubuntu:16.04 /bin/bash

/bin/bash 명령어로 실행

컨테이너 내부에 들어가기 위해 bash 쉘을 실행하고 키보드 입력을 위해 -it 옵션을 준다.

-i 옵션과 -t 옵션은 같이 쓰이는 경우가 매우 많다. 
이 두 옵션은 컨테이너를 종료하지 않은채로, 터미널의 입력을 계속해서 컨테이너로 전달하기 위해서 사용한다.
따라서, -it 옵션은 특히 컨테이너의 쉘(shell)이나 CLI 도구를 사용할 때 매우 유용하게 사용된다.

추가적으로 프로세스가 종료되면 컨테이너가 자동으로 삭제되도록 --rm 옵션을 추가한다.

--rm 옵션은 컨테이너를 일회성으로 실행할 때 주로 쓰인다.
컨테이너가 종료될 때 컨테이너와 관련된 리소스(파일 시스템, 볼륨)까지 깨끗이 제거해준다.

* 추가적인 docker run 커맨드

https://www.daleseo.com/docker-run/

 

docker run 커맨드 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

이전에 해당 이미지를 다운 받았기 때문에 이미지를 다운로드 하지 않고 바로 실행되었다. cat /etc/issue와 ls를 실행해보면 ubuntu 리눅스인 것을 알 수 있다. 

 

exit으로 bash 쉘을 종료하면 컨테이너도 같이 종료된다.

 

이것으로 도커를 설치하여 간단한 컨테이너를 생성하여 접속하고 삭제까지 해보았다.

다음에는 기본 명령어에 대해 알아보도록 하자.

 

* 참고

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

 

초보를 위한 도커 안내서 - 설치하고 컨테이너 실행하기

초보를 위한 도커 안내서 2번째 글입니다. 도커의 기본적인 내용을 이야기 했던 첫번째 글에 이어 실제로 도커를 설치하고 컨테이너를 실행하면서 도커 명령어를 알아봅니다. 도커를 처음 접하

subicura.com

https://shanepark.tistory.com/194

 

MacOS ) m1 맥북 docker 설치하기 + 가상환경에 postgreSQL 띄워 보기

MacOS ) m1 맥북 docker 설치하기 + 가상환경에 postgreSQL 띄워 보기 이번엔 Windows에 Docker를 설치 해 보았으니, Mac에서도 Docker를 설치 해 보겠습니다. 예전에는 MySQL 이건 postgreSQL이건 무슨..

shanepark.tistory.com

https://www.daleseo.com/docker-run/

 

docker run 커맨드 사용법

Engineering Blog by Dale Seo

www.daleseo.com

 

'Infra > Docker' 카테고리의 다른 글

도커를 배우자03 - 기본 명령어  (0) 2021.11.18
도커를 배우자01 - 도커란?  (0) 2021.11.16

댓글