Huny's Dev Blog
huny.dev

Docker image prune 안전하게 사용하기: dangling과 -a의 삭제 범위

Docker 이미지 정리 전 사용량과 컨테이너 참조를 확인하고, 기본 삭제와 -a, 생성 시각 필터의 차이를 살펴본다.

Hun Jang
Hun Jang Nov 12, 2026

Docker 디스크 공간을 정리할 때 docker image prune은 기본적으로 dangling 이미지만 삭제한다. -a를 붙이면 태그가 있어도 기존 컨테이너가 참조하지 않는 이미지까지 대상이 된다. 실행 전 현재 Docker 환경과 중지된 컨테이너, 다시 받아야 할 이미지를 확인한다.

사용하지 않는 이미지 정리를 표현한 AI 생성 일러스트

먼저 사용량과 대상을 살펴보기

첫 명령은 선택된 context를 표시한다. 실제 정리 대상은 연결된 Docker 데몬이므로 원격 context나 Docker Desktop을 사용하는 경우 특히 확인한다. docker system df는 Docker 객체의 디스크 사용량을 보여준다. 이미지 레이어는 공유될 수 있어 목록의 크기를 단순히 더한 값과 실제 회수 용량은 다를 수 있다.

마지막 명령은 실행 중인 컨테이너뿐 아니라 중지된 컨테이너도 보여준다. 컨테이너가 참조하는 이미지는 -a의 미사용 이미지 대상에서 제외된다. Docker 정리 문서

기본 정리와 -a의 차이

기본 명령은 태그가 없고 컨테이너가 참조하지 않는 dangling 이미지를 정리한다. 확인 메시지가 나오면 범위를 검토하고 진행한다. 태그가 없다는 표시만으로 필요한 모든 정보를 판단하지 말고 먼저 목록을 살펴본다.

-a는 어느 컨테이너에서도 참조하지 않는 태그된 이미지까지 포함한다. Compose 파일에 이미지 이름이 적혀 있어도 해당 이미지를 참조하는 컨테이너가 없다면 삭제 대상이 될 수 있다. 나중에 재배포할 때 레지스트리에서 다시 받아야 하며, 로컬에서만 만든 이미지라면 복구 수단을 먼저 확보한다. 명령 참조

생성 시각으로 범위 줄이기

이 예시는 데몬의 현재 시각을 기준으로 생성된 지 168시간이 지난 이미지 중, 컨테이너가 참조하지 않는 이미지를 정리한다. until은 마지막 사용 시각이 아니라 이미지 생성 시각을 기준으로 한다. 예전 이미지라도 이후에 필요할 수 있으므로 보존 대상을 먼저 확인한다. 날짜를 직접 지정할 때 시간대가 없으면 데몬의 지역 시간대가 사용된다. 필터 기준

실행 후 확인할 점

실행 결과의 회수 용량과 정리 후 사용량을 확인한다. 실제 회수량은 공유 레이어와 다른 참조에 따라 달라진다. -f는 확인 질문을 생략하므로 대상과 영향을 검토하기 전에는 사용하지 않는다. docker image prune은 이미지 정리 명령이며 볼륨을 정리하지 않는다. 여러 객체를 정리하는 docker system prune이나 볼륨 삭제는 별도의 범위와 데이터 영향을 확인해야 한다.

2026년 11월 12일 Docker 공식 문서를 기준으로 작성했다. 명령은 설명용이며 실제 Docker 데몬에서 실행하지 않았다.

English version · Docker Image Prune Safely: Dangling Images vs -aDocker Image Prune Safely: Dangling Images vs -a

추천 글