Docker를 오랫동안 사용하다 보면 컨테이너, 이미지, 볼륨, 빌드 캐시 등이 계속 쌓이게 됩니다. 처음에는 용량이 크지 않지만 프로젝트를 반복적으로 생성하고 삭제하는 과정이 계속되면 수십 GB 이상의 디스크 공간을 차지하는 경우도 흔합니다.
특히 개발 서버나 CI/CD 환경에서는 테스트를 반복하면서 사용하지 않는 이미지와 볼륨, 빌드 캐시가 지속적으로 누적됩니다. 디스크 사용량이 증가하면 빌드 속도가 느려지거나 새로운 이미지를 다운로드하지 못하는 문제가 발생할 수도 있습니다.
이럴 때 가장 먼저 실행하는 명령어가 바로 docker system df입니다.
Docker System DF는 Docker가 사용하는 디스크 용량을 확인하는 명령어입니다. 이미지(Image), 컨테이너(Container), 볼륨(Volume), 빌드 캐시(Build Cache)가 각각 얼마나 저장 공간을 사용하는지 한눈에 확인할 수 있으며, Docker 디스크 관리의 시작점이 되는 매우 중요한 명령어입니다.
이번 글에서는 Docker System DF의 개념부터 기본 사용법, 출력 결과 해석, 주요 옵션, 실무 활용 방법까지 자세히 알아보겠습니다.
Docker System DF란 무엇인가?
Docker System DF는 Docker 리소스의 디스크 사용량을 확인하는 명령어입니다.
현재 저장된 이미지와 컨테이너, 볼륨, 빌드 캐시가 각각 얼마나 많은 저장 공간을 사용하는지 확인할 수 있습니다.
운영 서버에서는 디스크 공간 부족 문제가 발생하면 가장 먼저 실행하는 명령어 중 하나입니다.
Docker System DF는 언제 사용하는가?
다음과 같은 상황에서 자주 사용합니다.
- Docker 디스크 사용량 확인
- 이미지 용량 확인
- 볼륨 사용량 확인
- 빌드 캐시 확인
- 디스크 공간 부족 문제 해결
- Docker 리소스 정리 전 점검
운영 환경과 개발 환경 모두에서 자주 사용하는 기본 관리 명령어입니다.
Docker System DF 기본 사용법
가장 기본적인 사용 방법입니다.
docker system df
실행하면 다음과 같은 결과가 출력됩니다.
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 12 5 6.3GB 2.8GB (44%)
Containers 8 3 420MB 210MB (50%)
Local Volumes 10 4 3.7GB 1.9GB (51%)
Build Cache 15 2 5.8GB 4.6GB
Docker 리소스별 사용량과 정리 가능한 용량을 한눈에 확인할 수 있습니다.
출력 결과 이해하기
Docker System DF의 출력 항목은 다음과 같습니다.
TYPE
리소스 종류를 의미합니다.
Images, Containers, Local Volumes, Build Cache 등이 표시됩니다.
TOTAL
현재 저장된 리소스의 전체 개수입니다.
ACTIVE
현재 사용 중인 리소스 개수입니다.
실행 중인 컨테이너나 참조 중인 이미지 등이 포함됩니다.
SIZE
해당 리소스가 사용하는 전체 디스크 용량입니다.
RECLAIMABLE
현재 삭제하거나 정리할 수 있는 용량입니다.
Docker 환경을 최적화할 때 가장 많이 확인하는 항목입니다.
상세 정보 확인하기
리소스별 상세 정보를 확인하려면 -v 옵션을 사용합니다.
docker system df -v
출력 결과에는 이미지별 크기, 컨테이너별 사용량, Volume 정보까지 자세하게 표시됩니다.
운영 서버에서 어떤 리소스가 가장 많은 공간을 차지하는지 분석할 때 매우 유용합니다.
Docker System DF를 실행해야 하는 대표적인 상황
다음과 같은 상황에서는 Docker System DF를 가장 먼저 실행하는 것이 좋습니다.
- 디스크 용량이 갑자기 부족할 때
- Docker 이미지가 너무 많아졌을 때
- 사용하지 않는 Volume을 정리하기 전
- Build Cache가 많이 쌓였을 때
docker system prune실행 전
Docker 환경의 현재 상태를 빠르게 파악하는 가장 좋은 방법입니다.
Docker System DF 실무 활용 예제
Docker System DF는 운영 서버의 디스크 사용량을 점검하거나 Docker 리소스를 정리하기 전에 가장 먼저 실행하는 명령어입니다.
현재 Docker 디스크 사용량 확인하기
가장 기본적인 사용 방법입니다.
docker system df
Docker 이미지, 컨테이너, 볼륨, 빌드 캐시의 전체 사용량을 확인할 수 있습니다.
상세 정보까지 확인하기
각 리소스별 상세 용량을 확인하려면 -v 옵션을 사용합니다.
docker system df -v
이미지별 크기와 컨테이너별 사용량, Volume 정보까지 자세하게 확인할 수 있습니다.
이미지 사용량 확인하기
출력 결과에서 Images 항목을 확인합니다.
Images
TOTAL: 24
SIZE: 18.6GB
RECLAIMABLE: 7.2GB
사용하지 않는 이미지가 얼마나 많은 공간을 차지하는지 쉽게 확인할 수 있습니다.
Build Cache 확인하기
빌드 캐시도 상당한 용량을 차지하는 경우가 많습니다.
Build Cache
SIZE: 12.4GB
RECLAIMABLE: 10.9GB
Docker 이미지를 자주 빌드하는 서버에서는 Build Cache를 주기적으로 확인하는 것이 좋습니다.
Docker 정리 전 상태 확인하기
리소스를 정리하기 전 현재 상태를 확인합니다.
docker system df
이후 필요하다면 다음 명령을 실행합니다.
docker system prune
정리 전후의 용량을 비교하면 얼마나 많은 공간이 확보되었는지 쉽게 확인할 수 있습니다.
디스크 사용량 비교하기
정리 후 다시 확인합니다.
docker system df
정리 가능한 용량이 감소했다면 Docker 리소스가 정상적으로 정리된 것입니다.
Linux 서버 문제 해결
운영 중인 Jenkins 서버에서 Docker 이미지를 새로 다운로드하지 못하는 문제가 발생했습니다.
확인 결과 서버의 디스크 용량이 거의 가득 찬 상태였습니다.
관리자는 먼저 Docker 사용량을 확인했습니다.
docker system df
확인 결과 Build Cache와 사용하지 않는 이미지가 대부분의 디스크 공간을 차지하고 있었습니다.
보다 자세한 정보를 확인하기 위해 다음 명령을 실행했습니다.
docker system df -v
사용하지 않는 이미지와 오래된 Build Cache를 확인한 후 정리 작업을 수행했습니다.
docker system prune
정리 후 다시 사용량을 확인했습니다.
docker system df
약 18GB의 저장 공간이 확보되었고 Docker 이미지 다운로드도 정상적으로 수행되었습니다.
운영 서버에서는 디스크 부족 문제가 발생하면 가장 먼저 docker system df를 실행하는 것이 좋은 습관입니다.
Docker System DF 사용 시 주의사항
Docker System DF를 사용할 때는 다음 사항을 알아두면 좋습니다.
첫 번째는 이 명령어는 사용량만 확인하며 어떠한 리소스도 삭제하지 않습니다.
안전하게 실행할 수 있는 조회 명령어입니다.
두 번째는 RECLAIMABLE 항목은 삭제 가능한 예상 용량을 의미합니다.
실제로 확보되는 공간은 현재 Docker 환경에 따라 달라질 수 있습니다.
세 번째는 -v 옵션을 사용하면 출력되는 정보가 많아질 수 있습니다.
리소스가 많은 운영 서버에서는 결과가 매우 길게 표시될 수 있습니다.
네 번째는 Docker 리소스를 정리하기 전 반드시 현재 사용량을 확인하는 습관을 가지는 것이 좋습니다.
Best Practice
Docker System DF를 사용할 때는 다음과 같은 방법을 추천합니다.
- 디스크 부족 시 가장 먼저 실행합니다.
-v옵션으로 상세 정보를 분석합니다.- 정리 전후 용량을 비교합니다.
- Build Cache 사용량을 주기적으로 확인합니다.
- 운영 서버에서는 정기 점검 항목에 포함합니다.
docker system prune실행 전 반드시 확인합니다.
이러한 방법을 적용하면 Docker 저장 공간을 효율적으로 관리할 수 있습니다.
자주 묻는 질문
Docker System DF는 리소스를 삭제하나요?
아니요.
사용량만 확인하는 조회 명령어이며 어떠한 리소스도 삭제하지 않습니다.
RECLAIMABLE은 무엇인가요?
현재 삭제하여 확보할 수 있는 예상 디스크 용량을 의미합니다.
-v 옵션은 언제 사용하나요?
리소스별 상세 용량과 정보를 확인해야 할 때 사용합니다.
운영 서버 문제 분석 시 매우 유용합니다.
Docker 디스크가 부족하면 다음으로 어떤 명령을 실행해야 하나요?
현재 사용량을 확인한 후 docker system prune 또는 필요한 개별 정리 명령을 실행하는 것이 일반적입니다.
마무리
Docker System DF는 Docker가 사용하는 디스크 용량을 한눈에 확인할 수 있는 필수 관리 명령어입니다.
이미지, 컨테이너, 볼륨, 빌드 캐시의 사용량과 정리 가능한 공간을 빠르게 확인할 수 있어 디스크 부족 문제를 해결하는 첫 단계로 가장 많이 사용됩니다.
특히 운영 서버에서는 정기적으로 docker system df를 실행하여 Docker 리소스 사용 현황을 점검하고, 필요할 경우 docker system prune과 함께 활용하면 안정적이고 효율적인 Docker 환경을 유지할 수 있습니다.