반응형

본 내용은 인프런의 데브위키님의 강의 "개발자를 위한 쉬운 도커" 내용을 바탕으로 정리한 내용입니다.

 

컨테이너의 라이프사이클

  • 도커 컨테이너의 라이프사이클은 컨테이너가 생성되고 실행되는 과정을 설명한다.
  1. 생성(Create)
    새로운 컨테이너가 생성된다. 이 단계에서는 이미지를 기반으로 컨테이너가 만들어지며, 필요한 리소스 및 설정이 할당된다.
  2. 실행(Running)
    생성된 컨테이너 내부의 프로세스가 실행되며, 외부와의 통신이 가능해진다.
  3. 일시정지(Paused)
    컨테이너에서 사용중인 모든 프로세스를 일시중지한다. CPU는 사용하지 않고 메모리에 모두 저장한다.
  4. 종료(Stopped)
    컨테이너 내의 프로세스가 정지된다.
  5. 재시작(Restart)
    필요한 경우 컨테이너가 재시작할 수 있는데 예를 들어, 컨테이너가 실패하거나 중단되었을 때 자동으로 재시작되도록 설정할 수 있다.
  6. 삭제(Remove)
    더 이상 필요하지 않은 컨테이너는 삭제된다. 이 단계에서 컨테이너가 호스트 시스템에서 완전히 제거된다.

그림 1 ) 컨테이너의 라이프 사이클

 

컨테이너 생성 종료, 재시작

  • tenCounter 컨테이너 : 1부터 10까지 1초 간격으로 출력
# 컨테이너 생성
docker create --name tencounter devwikirepo/tencounter

# 생성된 컨테이너 조회: STATUS가 Created
docker ps -a

# 컨테이너 실행
docker start tencounter

# 컨테이너 실행 후 실행 및 종료 상태 확인: STATUS가 Up 4 seconds에서 Exited (0) 8 seconds ago로 변경
docker ps -a

# 종료된 프로세스 재시작(터미널연결)
docker start -i tencounter

# 컨테이너삭제
docker rm -f tencounter

컨테이너 실행 및 로그 확인

  • hundredCounter : 1부터 100까지 1초 간격으로 출력

shell 1

# step1 컨테이너 실행
docker run --name hundredcounter devwikirepo/hundredcounter
# 아래 Shell2로 이동 ↓

# step 3
# 컨테이너 재실행
docker start -i hundredcounter
# 아래 Shell2로 이동 ↓

shell 2

# step 2 
# 컨테이너 상태 및 로그 확인
docker ps
# 컨테이너 로그 출력
docker logs hundredcounter
# 컨테이너 실시간 출력
docker logs -f hundredcounter

# 컨테이너 삭제
docker rm -f hundredcounte

# 컨테이너 중단 및 재시작
docker pause hundredcounter
docker unpause hundredcounter

# 생성된 컨테이너 정지 후 상태 확인
docker stop hundredcounter
docker ps -a
# 위 Shell 1로 이동 ↑

# step 4
# 컨테이너재시작
docker restart hundredcounter
# 위 Shell 1로 이동 ↑
반응형

'Docker' 카테고리의 다른 글

[Docker] 이미지와 레이어  (0) 2024.07.18
[Docker] 이미지 레지스트리  (0) 2024.07.18
[Docker] 메타데이터  (0) 2024.07.18
[Docker] 이미지와 컨테이너  (0) 2024.07.18
[Docker] 가상화 기술  (0) 2024.07.18

+ Recent posts