본문 바로가기

Docker

[Docker] 도커 컨테이너 다루기 : 컨테이너 라이프사이클

도커 컨테이너 라이프사이클

 

도커 실행방법

- run 명령어

- create 명령어를 통해 컨테이너를 만들진 컨테이너를 start 명령어를 통해 실행 

 

도커 일시중지

- pause

- unpause

 

도커 중지 (도커를 stop 한다고 해서 삭제되는것은 아님)

- stop

- start 

 

도커 삭제 (중지되었거나, 실행되지 않은 컨테이너의 경우 삭제 가능)

- rm

 

 

 

 

 

컨테이너 시작 명령어 

 

도커 create / run 명령어 모두 이미지가 없을 경우 자동으로 pull을 수행하여 이미지를 다운로드 받음

 

- 컨테이너 생성 

# docker create [image]

 

- 컨테이너 생성 및 시작

# docker run [image]

 

- 컨테이너 시작

# docker start [container_ID]

# docker start [container_Name]

 

 

 

 

 

 

도커 기본 명령어

 

- 도커 버전 확인

# docker -v

 

- 실행중인 컨테이너 목록 확인

# docker ps

 

- 컨테이너 전체 목록 확인

# docker ps -a

 

- 컨테이너 상세 정보 확인 

# docker inspect [container]

 

- 컨테이너 일시중지

# docker pause [container]

 

- 컨테이너 재개

# docker unpause [container]

 

- 컨테이너 종료 (SIGTERM 시그널 전달)

# docker stop [container]

 

- 컨테이너  강제 종료 (SIGKILL 시그널 전달)

# docker kill [container]

 

- 도커 내 모든 컨테이너 종료 

# docker stop $(docker ps -a -q)

 

- 컨테이너 삭제 (실행중인 컨테이너 불가)

# docker rm [container]

 

- 컨테이너 실행 종료 후  자동 삭제

# docker run --rm ...

 

- 컨테이너 강제 종료 후 삭제 (SIGKILL 시그널 전달)

# docker rm -f [container]

 

- 중지된 모든 컨테이너 삭제

# docker container prune

 

 

 

 

컨테이너 시작 주요 옵션 

 

 

-i : 호스트의 표준 입력을 컨테이너와 연결 (interactive)   // 보통 -i와 -t의 옵션은 같이 사용, 도커 컨테이너의 셸을 실행할때 쓰는 옵션 

-t : 컨테이너의 TTY를 할당하여 터미널 명령어 수행을 정상적으로 이용할 수 있도록 함   // 보통 -i와 -t의 옵션은 같이 사용, 도커 컨테이너의 셸을 실행할때 쓰는 옵션 

--rm : 컨테이너 실행 종료 후 자동 삭제

-d : 백그라운드 모드로 실행 (detached)      // 해당 옵션을 주지 않으면 포그라운드로 실행됨 

--name hello-word : 컨테이너 이름 지정

-p 80:80 : 호스트 -컨테이너 간 포트 바인딩

-v /opt/example:/example : 호스트-컨테이너 간 볼륨 바인딩

fastcampus/hello-word:latest : 실행할 이미지

my-command : 컨테이너 내에서 실행할 명령어