mirror of
https://gitee.com/ShopeX/ECShopX
synced 2026-05-13 01:45:56 +08:00
36 lines
962 B
Bash
36 lines
962 B
Bash
#!/bin/bash
|
|
|
|
set -xe
|
|
|
|
if [[ -z $DOCKER_IMAGE ]]; then
|
|
error "Must be specific docker iamge for clean"
|
|
exit 1
|
|
fi
|
|
|
|
DOCKER_HISTORY_LIMIT=${DOCKER_HISTORY_LIMIT:-2}
|
|
|
|
|
|
source $(dirname $0)/functions
|
|
|
|
docker_env_clean() {
|
|
docker_history_list=`docker images | grep -i "${DOCKER_IMAGE} "`
|
|
docker_history_num=`echo "${docker_history_list}" | wc -l`
|
|
echo "${docker_history_list}"
|
|
echo ${docker_history_num}
|
|
echo ${DOCKER_HISTORY_LIMIT}
|
|
|
|
if [ ${docker_history_num} -gt ${DOCKER_HISTORY_LIMIT} ]; then
|
|
delete_num=$(( ${docker_history_num} - ${DOCKER_HISTORY_LIMIT} ))
|
|
echo ${delete_num}
|
|
echo "${docker_history_list}" | tail -n ${delete_num} | awk 'NR>1' | awk '{print $3 " deleting"}'
|
|
echo "${docker_history_list}" | tail -n ${delete_num} | awk 'NR>1' | awk '{print $3}' | xargs -I % docker rmi -f %
|
|
fi
|
|
}
|
|
|
|
|
|
# ÇåÀídocker image
|
|
docker_env_clean
|
|
|
|
# ¸ã¶¨È¨ÏÞ
|
|
sudo chown -R gitlab-runner:gitlab-runner vendor
|