현상
docker 사용 시, 어느 시점에 /var/lib/docker 용량이 90GB를 넘으면서, 전체 서버 용량을 차지하는 현상 발생
1. 디스크 용량 확인
df -h
→ /dev/vda1 사용률이 100%로 확인됨. 주로 /var 아래가 문제인 경우가 많음.
2. /var 디렉토리 용량 분석
sudo du -sh /* 2>/dev/null | sort -hr | head -n 10
sudo du -sh /var/* | sort -hr | head -n 10
→ /var/lib가 대부분을 차지하고 있었음 (91GB)
3. /var/lib/docker 세부 분석
sudo du -sh /var/lib/docker/*
초기에 Permission denied 에러 발생했으므로 다음과 같이 실행:
sudo bash -c 'du -sh /var/lib/docker/* | sort -hr | head -n 20'
→ /var/lib/docker/containers 가 85GB 로 압도적
4. Docker 로그 파일만 삭제 (핵심)
Docker 컨테이너 로그는 기본적으로 json-file 형식으로 저장됨:
/var/lib/docker/containers/<container-id>/<container-id>-json.log
모든 컨테이너 로그 파일 일괄 삭제:
sudo find /var/lib/docker/containers/ -name '*-json.log' -type f -delete
5. 용량 재확인
sudo bash -c 'du -sh /var/lib/docker/* | sort -hr | head -n 20'
df -h
→ /var/lib/docker/containers 가 436KB로 줄어들고, 전체 디스크 용량도 회복됨
6. Docker 로그 재발 방지 설정 (예방법)
로그 파일 크기 제한 및 순환 설정:
sudo vi /etc/docker/daemon.json
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
}
}
설정 반영:
sudo systemctl restart docker
결론
- docker system prune -a --volumes 로 전체 정리도 가능(신중)
- 단순 로그 정리만으로도 수십 GB의 디스크 공간을 확보 가능
# 출처




최근댓글