Home → View summary of all Docker containers memory usage
View summary of all Docker containers memory usage
Published: 5/23/2023
You can get pretty much all resource usage information with docker stats
, but what you will lack there is the summary.
However, with some command line magic you can get the summary. You can put this in a .sh
script, and make it executable with chmod +x docker-memory.sh
:
mem_amount_total_with_unit=$(docker system info \
| grep 'Total Memory: ' \
| tr -d 'Total Memory: ')
unit=$(echo ${mem_amount_total_with_unit} \
| sed 's/[0-9\.]*//g')
mem_amount_total=$(echo ${mem_amount_total_with_unit} \
| sed 's/[^0-9\.]*//g')
mem_percent_used=$(docker stats --no-stream --format '{{.MemPerc}}' \
| tr -d '%' \
| paste -s -d '+' - \
| bc)
mem_percent_used=${mem_percent_used:-0}
mem_amount_used=$(echo "scale=2; ${mem_amount_total} * ${mem_percent_used} / 100" \
| bc)
echo "Memory Amount Total: ${mem_amount_total}${unit}"
echo "Memory Amount Used: ${mem_amount_used}${unit}"
echo "Memory Percent Used: ${mem_percent_used}%"
After running the script ./docker-memory.sh
, you will get something like this:
Memory Amount Total: 7.639GiB
Memory Amount Used: 5.55GiB
Memory Percent Used: 72.75%
On some systems, bc
is not present. You might need to install it with yum install bc
or apt-get install bc
or similar (depending on your system OS).