Docker Container LifeCycle

Pasted image 20221230131806.png

실제 LifeCycle

Pasted image 20221230131933.png

Container Start

컨테이너 생성

docker create [image]

컨테이너 생성 및 시작

docker start [container]

컨테이너 생성 및 시작

docker run [image]

컨테이너 시작 주요 옵션

docker run \
-i \ # 호슽의 표준 입력을 컨테이너와 연결
-t \ # TTY 할당
--rm \ # 컨테이너 실행 종료 후 자동 삭제
-d \ # 백그라운드 모드로 실행
--name hello-world \ # 컨테이너 이름 지정
-p 80:80 \ # 호스트 - 컨테이너 간 포트 바인딩
-v /opt/example:/example # 호스트 - 컨테이너 간 볼륨 바인딩
fastcampus/hello-world:latest \ # 실행할 이미지
my-command # 컨테이너 내에서 실행할 명령어

컨테이너 상태 확인

실행중인 컨테이너 상태 확인

docker ps

전체 컨테이너 상태 확인

docker ps -a

컨테이너 상세 정보 확인

docker inspect [container_name]

컨테이너 종료

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

docker stop [container_name]

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

docker kill [container]

모든 컨테이너 종료

docker stop $(docker ps -a -q)

컨테이너 삭제

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

docker rm [container]

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

docker rm -f [container]

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

docker run --rm ...

중지된 모든 컨테이너 삭제

docker container prune

#Docker