반응형
이미지 구조 이해
docker inspect ubuntu:14.04
docker inspect commit_test:first
docker inspect commit_test:second
inspect 명령어를 통해 컨테이너뿐만 아니라 네트워크, 볼륨, 이미지 등 모든 도커 단위의 정보를 얻을 수 있다.
이 명령어에서 가장 중요한 부분은 Layers 항목이다.
docker images에서 위에 3개의 이미지가 각각 188MB로 출력이 되어도 188MB 크기의 이미지가 3개 존재하는 것은 아니다.
전체 이미지의 실제 크기는 188MB + first 파일의 크기 + second 파일의 크기가 된다.
docker history commit_test:second
레이어의 구조는 history명령어를 통해 조금 더 쉽게 확인이 가능하다.
docker rmi commit_test:first
이번에는 이미지를 삭제한다. docker rmi를 통해 삭제가 가능하다.
주의해야 할 점으로는 이미지를 사용 중인 컨테이너가 있으면 안 된다는 점이다. 때문에 삭제를 위해서는
docker stop commit_test2 && docker rm commit_test2
docker rmi commit_test:first
이 작업을 마쳐야 한다.
하지만 이렇게 삭제해도 실제 해당 이미지의 레이어 파일이 삭제되지는 않는다 왜냐하면 first를 기반으로 하는 하위 이미지인 second가 존재하기 때문이다. 따라서 실제 이미지 파일은 삭제하지 않고 레이어에 부여된 이름만 삭제한다.
rmi명령어 결과인 Untagged:...는 이미지에 부여된 이름만 삭제한다는 것을 의미한다.
이번에는 commit_test:second 이미지를 삭제해 본다.
docker rmi commit_test:second
Deleted : 라는 출력 결과는 이미지 레이어가 실제로 삭제되었음을 뜻한다.
삭제되는 이미지는 부모 이미지가 존재하지 않아야만 해당 이미지 파일이 실제로 삭제가 된다.
📖 ← [ 시작하세요! 도커/쿠버네티스 ] 책을 참고하여 공부하였습니다.
반응형
'DevOps > Docker' 카테고리의 다른 글
[Docker] : 도커 이미지 배포하기 (0) | 2022.02.22 |
---|---|
[Docker] : 도커 이미지 추출하기 (0) | 2022.02.22 |
[Docker] : 도커 이미지 생성 (0) | 2022.02.21 |
[Docker] : docker images, 도커 이미지 및 이미지 검색 (0) | 2022.02.21 |
[Docker] : 도커 Block I/O 제한 (0) | 2022.02.21 |
댓글