Kleaner PRO

Профессиональный уход за системой Windows 7/10/11.

Сделано с заботой о производительности.

Мы в соцсетях
Продукты
  • Kleaner PRO
  • Магазин
  • Портал активации
  • Что нового в Kleaner PRO
  • Новые продукты — скоро
Ресурсы
  • Возможности
  • Вопросы
  • Сравнение программ
  • База знаний
  • Блог
  • Скачать
  • Kleaner SafeCheck
  • Планировщик места
Правовое
  • Лицензионное соглашение
  • Условия обслуживания
  • Политика конфиденциальности
  • Политика возврата
[email protected]Телеграм-поддержка @Vladimlrovlch
© 2026 Kleaner PRO · kleaner.pro. Все права защищены.
Оплата
ЮMoneyVisaMastercardМИРPayPalWebMoneyUseGatewayBitcoinEthereumUSDT
Kleaner PRO
ВозможностиSmart CareЦеныВопросыБаза знанийБлогСкачать
Сервисы▾
Kleaner SafeCheckЛокальный SHA-256 · поиск отчёта VirusTotalПланировщик местаБесплатный инструмент Windows
Активация
ВозможностиSmart CareЦеныВопросыБаза знанийБлогСкачать
СервисыKleaner SafeCheck · SHA-256Планировщик места
Активация
КупитьКупить лицензию
Блог →5 мин чтения2024-08-20· Команда Kleaner PRO

Docker Desktop и WSL2: как обуздать вечно растущий VHDX

Вы удалили половину образов, а Docker не вернул ни гигабайта: виртуальный диск на C: как был, так и остался на 80 ГБ. Это не баг, а конструкция — динамические VHDX растут по запросу и сами не сжимаются, поэтому лечится это строгим порядком: сначала уборка внутри Docker, потом ужимание самого файла.

Где на самом деле прячутся гигабайты

Docker Desktop на WSL2 хранит всё — образы, контейнеры, тома, кэш сборок — в специальных дистрибутивах WSL, каждый из которых лежит на C: одним файлом динамического VHDX. Каждый pull добавляет слои, каждая сборка — кэш, но удаление освобождает место только внутри Linux-файловой системы: файл на хосте остаётся на пиковом уровне. Ваши собственные Ubuntu или Debian устраивают тот же трюк со своим ext4.vhdx, и в охоте за «толстыми папками» ничего этого не видно, потому что для Windows это пара непрозрачных файлов.

  • docker-desktop-data (старые версии) или docker_data.vhdx (новые): главный пожиратель на 30–80 ГБ в %LOCALAPPDATA%\Docker\wsl — образы, контейнеры, тома, кэш сборок
  • docker-desktop: небольшой системный дистрибутив, в котором крутится сам движок Docker
  • Ваши дистрибутивы WSL2: у каждого свой ext4.vhdx в %LOCALAPPDATA%\Packages\...\LocalState
  • Кэш сборок: docker builder хранит промежуточные слои, даже если финальный образ удалён
  • Висячие образы и остановленные контейнеры: осиротевшие слои от прерванных сборок и загрузок
  • Анонимные тома: молча создаются при каждой сборке через compose и переживают даже docker image prune

Сначала чистим внутри: ужимать грязный диск — пустая работа

Ужимать VHDX, набитый мёртвыми образами, бессмысленно: получится файл поменьше, который через неделю снова разрастётся. Поэтому начинайте внутри: docker system df покажет, что реально занимают образы, контейнеры, тома и кэш, и цифры обычно удивляют. docker system prune -a сносит неиспользуемые образы и остановленные контейнеры, флаг --volumes добавляет осиротевшие тома — убедитесь, что не убиваете данные, которые вам дороги. Затем docker builder prune чистит кэш сборок, раздуваемый повторными пересборками; и только когда docker system df показывает приемлемую цифру, есть смысл трогать файл на хосте.

Потом ужимаем диск: три штатных способа

Сначала wsl --shutdown, иначе файл занят работающими контейнерами и дистрибутивами. На свежих сборках WSL команда wsl --manage <дистрибутив> --set-sparse true помечает VHDX разреженным, и Windows забирает свободные блоки; на старых версиях надёжный путь — экспорт и импорт: wsl --export в .tar, wsl --unregister, wsl --import в новую папку, и файл пересоздаётся под реальный размер данных. Docker Desktop умеет и целиком переехать на другой диск — Settings > Resources > Advanced, данные мигрируют автоматически; это честное решение, когда C: просто мал для вашей работы. Заодно ограничьте рост: на той же странице настроек есть лимит размера диска, а ежемесячная привычка смотреть docker system df удержит вас в рамках.

Вопросы и ответы

Почему Docker Desktop занимает так много места на диске?

Docker держит все образы, слои, тома и кэш сборок в динамическом VHDX, который растёт по запросу и сам не сжимается. Посмотрите разбивку через docker system df, почистите лишнее, а затем уплотните диск.

Как уменьшить файл VHDX от Docker в WSL2?

Выполните wsl --shutdown, затем пометьте диск разреженным: wsl --manage <дистрибутив> --set-sparse true. Либо экспортируйте дистрибутив в .tar, удалите его и импортируйте обратно — новый VHDX совпадёт с реальным размером данных.

Понятно до покупки: что входит в лицензию

Разовый 30-минутный триал даёт доступ к базовым инструментам. Возможности с меткой PRO остаются закрыты до активации платной лицензии.

Скачать для WindowsКупить лицензию

Читайте также

Что такое VHDX: виртуальные диски, которые жрут реальное место→WSL1 против WSL2: один пингвин, два совершенно разных счёта за диск→Почему диск C: заполняется сам по себе, что бы вы ни удаляли→12 способов освободить место на C: не удаляя ничего важного→

Написать нам: [email protected]

Русский
EnglishРусскийУкраїнськаDeutschEspañolFrançaisPortuguês (BR)PolskiItalianoTürkçe日本語简体中文