본문 바로가기

프로그래밍

Docker(도커) 용량 초과 이슈, overlay2 정리

클라우드서버에 도커로 개발 서버를 운영 중이었다.

CICD를 구성하여 github에 push 할 때마다 기존 컨테이너를 삭제하고 새로 구성하였다.

이렇게 6개월가량 개발을 진행 중이었는데 어느 날 서버의 용량 초과로 이슈가 발생하였다.

스토리지는 무려 50GB로 넉넉하게(?) 할당하였는 데 사용하지 않은 캐시가 많이 쌓인 것 같았다.

이러한 경우 해결하는 방법을 정리하고자 한다.

 

먼저 아래의 명령어로 Docker의 루트 디렉터리의 위치를 찾는다.

docker info | grep "Docker Root Dir"

 

대부분 아래의 위치에 설치가 되어있을 것이다.

Docker Root Dir: /var/lib/docker

 

해당 디렉터리로 이동한 뒤에 아래 명령어로 어떤 폴더의 용량이 가장 큰지 확인해 본다.

du -sh * | sort -nr

 

 

실행 결과

 

 

역시나 overlay2에서 대다수의 용량을 차지하고 있었다. 그동안 레이어가 많이 쌓였었나 보다.

아래의 명령어로 사용하지 않는 데이터를 일괄적으로 삭제할 수 있다. 혹여나 잘못 삭제하고 후회할지 모르니 중요한 데이터는 미리 백업해 두자!

sudo docker system prune --volumes

 

 

어느 정도 시간이 지난 후 30GB가량이 정리되었다!

실서버를 배포할때는 이러한 부분도 고려해야겠다..ㅎ