← На главную

Блог · Бессонный Кодер

Чистка места на диске после докера

Используя докер на вашем компьютере, вы можете заметить как активно он использует место для контейнеров и имейджей. Рано или поздно настигает момент когда пора чистить всё это место.

Если вы используете линукс, то у вас нет проблем, достаточно использовать команду:

docker system prune

Но на windows это не работает, почему же? Проблема в том что все свои данные докер хранит внутри виртуального диска .vhdx который может самостоятельно разрастаться, но не уменьшаться в размерах. Но это не беда, ведь есть способ вручную сжать его.

Для начала давайте определимся с редакцией windows, ведь от этого зависит решение.

Если у вас Windows Home Edition

  1. Откройте окно PowerShell от имени администратора
  2. Определите, где находится файл диска докера По умолчанию он храниться по пути "C:\Users\User\AppData\Local\Docker\wsl\data\ext4.vhdx"
  3. Завершите работу Windows Subsystem for Linux командой
wsl --shutdown
  1. Запустите утилиту DiskPart
diskpart
  1. Выберите файл с диском докера
select vdisk file="C:\Users\User\AppData\Local\Docker\wsl\data\ext4.vhdx"
attach vdisk readonly
  1. Произведите сжатие, это может занять довольно много времени, в зависимости от веса файла
compact vdisk
  1. Завершите работу утилиты DiskPart
detach vdisk
exit

Если у вас не Windows Home Edition

  1. Откройте окно PowerShell от имени администратора
  2. Подключите модуль Hyper-V в PowerShell
Import-Module Hyper-V
  1. Определите, где находится файл диска докера По умолчанию он храниться по пути "C:\Users\User\AppData\Local\Docker\wsl\data\ext4.vhdx"
  2. Завершите работу Windows Subsystem for Linux командой
wsl --shutdown
  1. Перейдите в каталог с диском
cd "C:\Users\User\AppData\Local\Docker\wsl\data\"
  1. Произведите сжатие, это может занять довольно много времени, в зависимости от веса файла
optimize-vhd -Path .\ext4.vhdx -Mode full

Вот так просто мы освободили пару (десятков) гигабайт на нашем диске.

R
АвторБессонный Кодер

Пишу о разработке, системах и играх.

Telegram-канал

Продолжить чтение

Похожие материалы

Статья

Уменьшаем размер диска контейнера в Proxmox

Порой наступает момент когда контейнер в Proxmox становится бесполезно большим, и его размер нужно

Статья

Java №2. Чем помогла Minecraft-у java

Как мне кажется, одной из важных частей успеха Minecraft — тот факт что он написан на Java. Да, ин

Статья

Переносим базу PostgreSQL используя репликацию

Сегодня мы поговорим как перенести боевую базу данных PostgreSQL без простоя нашего приложения. Для

Статья

Java №3. Что такое JVM

Мы привыкли к мы привыкли думать, что когда вы запускаете программу — компьютер исполняет машинный

Статья

Этика игр №7. Конец

Подводя к концу цикл постов про этику игр, мы вместе затронули несколько разных тем, в которых люди

Статья

Размышляем о Головоломке: важность печали и опасность экстремального оптимизма

Совсем недавно (как минимум по меркам даты написания этого сценария), на большие экраны вышла Голов

Статья

Этика игр №4. Читеры

Говорить о политке конечно весело, но боюсь это не единственный вопрос этики , который затрагивает

Статья

Пожар на лыжном спуске в Капруне 2000 года

Технологическая катастрофа на фуникулёре произошедшая 11 ноября 2000 года в Капруне. В результате т

Статья

Этика игр №6. Зависимость от игр

А вы задумывались, откуда и почему вообще появляется эта страшная и непонятная — игровая зави