본문 바로가기

일/인프라

오래된, 미사용 도커 이미지 자동 삭제 스크립트

회사에서 도커 이미지 기반으로 시스템을 운영중

 

용량이 부족하여 확인해보니 오래된, 사용되지 않은 구 버전 도커 이미지들이 많이 쌓여있음을 확인  (docker images) 

 

찾아보니 prune 이라는 명령어로 미사용 이미지들을 정리할 수 있다더라.

 

docker image prune --filter "until=YYYY-MM-DD" -a

 

docker image prune : 미사용 도커 이미지 삭제 

--filter : 특정 조건에 따라서 삭제 수행 

until="" : 해당 날짜 이전에 배포된 도커 이미지만 

-a : 미사용 중인 이미지면 무조건 삭제. 해당 옵션이 없다면 dangling 이미지만을 지움(미사용 + tag조차 없는 이미지) 

추가로 -f 옵션을 달면 console 창에 삭제 여부를 묻지 않는다. 

 

아래는 스크립트 전문

 

#!/bin/sh
temp=$(date -d "3 months ago" '+%Y-%m-%d')
docker image prune --filter until=$temp -a -f

 

추가로 cron tab에 등록하여 1달에 1번, 3달에 한번 등 주기적으로 삭제가 가능하다. 

' > 인프라' 카테고리의 다른 글

gcp workload identity federation 사용 간단 정리  (0) 2022.11.10