برنامه نویسی

محیط Docker خود را تمیز کنید

در این آموزش قصد داریم به بررسی این موضوع بپردازیم که چگونه می توانیم محیط محلی خود را از تصاویر داکر خود که دیگر از آنها استفاده نمی کنیم پاکسازی کنیم.

Docker عالی است اما برخی از تصاویر و کانتینرهای دانلود شده می توانند فضای زیادی را در رایانه شما اشغال کنند. برخی از این تصاویر ممکن است برای پروژه‌های قدیمی‌تری باشند که دیگر حتی روی آن‌ها توسعه نمی‌دهید، بنابراین نیازی به داشتن تصویر به صورت محلی نیست. اگر به هر دلیلی نیاز دارید به آن داکر پروژه برگردید به شما امکان می دهد تصاویری را که به صورت محلی یافت نمی شوند به راحتی دانلود کنید.

کاربرد Docker را پیدا کنید

با استفاده از دستور

$ docker system df
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

می توانید ببینید چه مقدار فضا توسط تصاویر، ظرف و حجم های شما استفاده می شود.

$ docker system df        

TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
Images              23                  9                   2.62GB              2.007GB (76%)
Containers          24                  1                   28.71MB             28.71MB (100%)
Local Volumes       71                  6                   1.217GB             1.216GB (99%)
Build Cache         0                   0                   0B                  0B
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

همانطور که از موارد بالا می بینید، 3.2 گیگابایت وجود دارد که می توان آن را بازیابی کرد.

Docker System Prune

این دستور میانبری است که می تواند تصاویر، کانتینرها و شبکه ها را هرس کند.

$ docker system prune

WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all dangling images
  - all dangling build cache

Are you sure you want to continue? [y/N] y
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

با این کار تمام ظروف استفاده نشده و تمام حجم‌های فعال حذف می‌شود، اما هنوز زمان‌های زیادی باقی می‌ماند که ممکن است از هیچ ظرفی استفاده نشود.

Docker Image Prune

برای حذف تمام تصاویر بدون حداقل یک ظرف مرتبط با آنها می توانید از دستور استفاده کنید docker image prune -a

$ docker image prune -a

WARNING! This will remove all images without at least one container associated to them.
Are you sure you want to continue? [y/N] y
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اگر اکنون دستور را اجرا کنید docker system df خواهید دید که تنها تصاویری که به صورت محلی خواهید داشت، تصاویر فعال هستند.

Docker Container Prune

اگر می‌خواهید هر ظرف متوقف شده را حذف کنید، می‌توانید با استفاده از دستور container prune این کار را انجام دهید

$ docker container prune

WARNING! This will remove all stopped containers.
Are you sure you want to continue? [y/N] y
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

حتی می توانید از a استفاده کنید --filter پرچمی که به شما امکان می دهد فقط کانتینرهایی را که در یک بازه زمانی معین متوقف شده اند حذف کنید.

$ docker container prune --filter "until=24h"
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

Docker Volume Prune

اگر می خواهید حجم های استفاده نشده را حذف کنید، می توانید از دستور استفاده کنید docker volume prune.

$ docker volume prune

WARNING! This will remove all volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

پس از انجام تمام موارد بالا می توانید به صفحه بازگردید docker system df دستور ذخیره فضایی که ذخیره کرده اید.

نوشته های مشابه

دکمه بازگشت به بالا