-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathget_all_docker_size.sh
35 lines (29 loc) · 1015 Bytes
/
get_all_docker_size.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/bash
function get_folder_size_kb(){
FOLDER=$1
FOLDER_SIZE=$(du -k -s $FOLDER | awk -F ' ' '{print $1}' )
echo ${FOLDER_SIZE}
}
function get_docker_mounts(){
docker inspect $1 | grep "\"Source\": " | sed "s/^ *//" | sed "s/[\",]//g" | sort -u | awk -F ' ' '{print $2}' | grep -v "/dev"
}
function get_all_docker_names(){
docker ps -a --format "{{.Names}}"
}
function get_report_lines(){
ALL_DOCKERS=$(get_all_docker_names)
for DOCKER in $ALL_DOCKERS
do
ALL_MOUNTS=$(get_docker_mounts $DOCKER )
for MOUNT in ${ALL_MOUNTS}
do
FOLDER_SIZE=$(get_folder_size_kb $MOUNT)
if [ "${FOLDER_SIZE}" -gt "1024" ]; then
echo "${DOCKER} ${MOUNT} ${FOLDER_SIZE} Kb"
fi
done
done
}
#####################
### Main program here
get_report_lines | grep -v "^addon.*homeassistant"