Docker: очистка неиспользуемых ресурсов (system prune)
Команды для безопасной очистки неиспользуемых Docker образов, контейнеров, томов и кеша с предупреждениями об осторожности.
Как использовать
- Скопируйте нужный фрагмент кода.
- Вставьте в свой проект и при необходимости измените под задачу.
- Проверьте зависимости и окружение (версии, переменные).
Команды для очистки неиспользуемых Docker ресурсов: образы, контейнеры, тома и build cache. Важно понимать, что удаляется и когда это безопасно.
# 1. Удалить остановленные контейнеры, неиспользуемые сети, образы без тегов
docker system prune
# 2. Удалить ВСЁ неиспользуемое (включая неиспользуемые образы)
docker system prune -a
# 3. Удалить неиспользуемые тома (ОСТОРОЖНО: может удалить данные!)
docker volume prune
# 4. Удалить неиспользуемые образы
docker image prune -a
# 5. Удалить build cache (освобождает много места)
docker builder prune
# 6. Полная очистка всего (контейнеры + образы + тома + сети + cache)
docker system prune -a --volumes
Usage:
# Безопасная очистка (только остановленные контейнеры и неиспользуемые сети)
docker system prune
# Очистка с предпросмотром (dry-run не поддерживается, но можно проверить вручную)
docker images # посмотреть образы
docker ps -a # посмотреть контейнеры
docker volume ls # посмотреть тома
Notes:
⚠️ Осторожность:
--volumesудаляет тома с данными (БД, файлы приложений) — используйте только если уверены-aудаляет все неиспользуемые образы, включая те, что могут понадобиться позже- Перед очисткой проверьте, что нужные контейнеры запущены и данные в томах сохранены
- Для продакшна лучше очищать вручную конкретные ресурсы, а не использовать
prune -a --volumes
Освобождение места:
# Проверить размер используемого места
docker system df
# Удалить только старые образы (старше 24 часов)
docker image prune -a --filter "until=24h"