icon picker
Docker

현재 스크립트 내용

: 현재 이웃 QA 서버에 3개의 스크립트 작성 (/home/wasadm/scripts)
batch-dockerdel.sh 입력한 텍스트 포함된 이미지 삭제
batch-dockerdel-dangling.sh <none> 이미지 삭제
→ 젠킨스에는 dangling 이미지만 삭제하는 job 추가해 둠
batch-dockerdel-1m.sh 입력한 날짜 기준 1달이 지난 이미지 삭제

스크립트 내용

batch-dockerdel.sh 입력한 텍스트 포함된 이미지 삭제
#!/bin/bash
if [ -z "$1" ]; then
echo "사용방법확인후 사용"
exit
fi
echo "$1 포함된 버전의 이미지 삭제"

docker rmi `docker images | awk -v keyword=$1 '$2 ~ keyword {print $3}'`


batch-dockerdel-dangling.sh <none> 이미지 삭제
#!/bin/bash
echo "$1 포함된 버전의 이미지 삭제"
df -h
docker images -f dangling=true

docker rmi $(docker images -f "dangling=true" -q)

batch-dockerdel-1m.sh 입력한 날짜 기준 1달이 지난 이미지 삭제
#!/bin/bash

echo "$1 한달 전 버전 이미지 삭제"
target_date=$1
one_month_ago=$(date -d "$target_date -1 month" +%Y-%m-%d)
used_images=$(docker ps --format "{{.Image}}")

# 필터링 - 한달 이전 && 사용 중 X
images_to_remove=$(docker images --format "{{.ID}} {{.CreatedAt}}" | awk -v target_date="$one_month_ago" '$2 < target_date && !($1 in used_images) {print $1}')

# 필터링된 이미지 삭제
for image_id in $images_to_remove; do
docker rmi $image_id
done



도커 이미지 꽉 찼을 때

현재 공간 확인, 도커 이미지 확인
df -h // 현재 공간 확인, /dev/sda3이 차있음
docker images
docker images -f dangling=true
image.png

2. dangling image 제거
docker rmi $(docker images -f "dangling=true" -q)

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.