컨테이너의 라이프사이클 ((Lifecycle))
컨테이너의 상태

- 생성 ((create)) 상태 docker create 명령어를 통해 컨테이너 생성단계 진입 생성 단계에서는 내부에서 프로세스를 실행하지 않기 때문에 호스트 OS의 CPU와 메모리를 사용하지 않는다.
- 생성단계에서 docker start명령을 사용하면 컨테이너의 메타데이터의 Cmd 값을 사용하여 Running 상태로 만들 수 있다. 실행상태라는 것은 컨테이너 내에서 정상적으로 프로세스가 실행중이라는 것을 의미한다. CPU와 메모리를 사용한다.
- docker run 은 docker create + docker run 명령이 합쳐진 것이다.
- docker restart명령을 통해 프로세스를 재시작 할 수 있다. 10초 뒤에 프로세스가 재시작한다
- docker pause상태에서는 컨테이너의 모든 프로세스가 일시중지된 상태이다. 일시중지한다는 것은 현재 상태를 모두 메모리에 저장하는 것이다. CPU는 사용하지 않고 메모리만 사용하게 된다.
- docker unpause하면 프로세스를 일시정지했던 시점부터 재시작할 수 있다.
- Stop상태는 컨테이너에서 실행시킨 프로세스를 완전히 중단시켰다는 것을 의미한다. 메모리 CPU사용이 중단 된다, docker start하면 처음부터 다시 시작함
- docker rm을 통해 컨테이너를 삭제할 수 있다. 실행중인 컨테이너를 삭제시 docker rm -f 사용해야함
즉 컨테이너의 라이프사이클은 생성 실행 정지 종료 삭제로 나뉘어진다. 이는 대부분 프로세스의 상태와 일치한다.
'Docker' 카테고리의 다른 글
| 도커 / docker hub 사용하기; pull, push (1) | 2025.01.25 |
|---|---|
| 도커 / 이미지 레지스트리 (1) | 2025.01.25 |
| 도커 / 이미지 (0) | 2025.01.25 |
| 도커 / 서버와 가상화의 이해, 도커 동작방식의 개요 (2) | 2025.01.25 |