مدیریت فضا در سرور های لینوکسی

در ابتدا با استفاده از دستور df -h وضعیت حافظه سرور را بررسی نمایید.

اگر سرویس ها بر روی داکر هستند از دستور زیر استفاده نماید

docker system df

و خروجی چیزی شبیه به این می دهد

TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images
Containers
Local Volumes
Build Cache

دقیقا مشخص میکند مشکل کجاست .

اگر مشکل لاگ کانتینر ها هست :

با استفاده از دستور زیر بزرگترین فایل های لاگ را پیدا کن

find /var/lib/docker/containers -name "*-json.log" -exec du -h {} \; | sort -hr | head -20

برای پاک کردن لاگ‌ها (بدون حذف کانتینر):

find /var/lib/docker/containers -name "*-json.log" -exec truncate -s 0 {} \;

پاک کردن Build Cache

docker builder prune -a
یا 
docker builder prune -a -f

اگر Imageهای بلااستفاده هستند

docker image prune -a

اگر Volumeهای بلااستفاده هستند

قبل از حذف ببین چه Volumeهایی داری:

docker volume ls

اگر مطمئن بودی استفاده نمی‌شوند:

اگر مطمئن بودی استفاده نمی‌شوند:

docker volume prune

اگر Containerهای قدیمی هستند

docker container prune

پاکسازی کامل

اگر مطمئن هستی چیزی لازم نیست:

docker system prune -a --volumes

نکته : این دستور Imageها، کانتینرهای متوقف‌شده، Networkهای بلااستفاده و Volumeهای بلااستفاده را حذف می‌کند. فقط زمانی اجرا کن که از عدم نیاز به آن‌ها مطمئن باشی.