harbor空间太大清理脚本blobs.250109

一、原因

相同的标签的镜像重复提交次数过多导致blobs占用空间越来越大。

二、脚本

 #!/bin/bash
 
# 设置要保留的版本数
KEEP_VERSIONS=5
 
# 指定 Registry 目录
REGISTRY_DIR="/data/registry/docker/registry/v2/blobs/sha256"
 
# 获取目录中的所有文件,并按照修改时间排序
IMAGE_FILES=$(find "$REGISTRY_DIR" -type f | xargs stat --format="%Y %n" | sort -n | awk '{print $2}')
 
# 获取要保留的文件列表
KEEP_FILES=$(echo "$IMAGE_FILES" | tail -n $KEEP_VERSIONS)
 
# 删除非保留的旧版本镜像文件
for FILE in $IMAGE_FILES; do
    if [[ ! " ${KEEP_FILES[@]} " =~ " ${FILE} " ]]; then
        rm "$FILE"
    fi
done
posted @ 2025-01-09 17:23  中国的Amadeus  阅读(125)  评论(0)    收藏  举报