Проблема с местом на диске в Docker для Windows

У меня есть контейнер Ubuntu с томом, в котором хранится моя база данных postgresql. В моей базе данных закончилось место из-за сбоя, и я вижу, что использование диска составляет 100%, когда я запрашиваю статистику диска в контейнере Ubuntu:

root@b2b1bc6c247c:/# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay          59G   58G     0 100% /
tmpfs            64M     0   64M   0% /dev
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
shm              64M     0   64M   0% /dev/shm
/dev/sda1        59G   58G     0 100% /etc/hosts
tmpfs           3.9G     0  3.9G   0% /proc/acpi
tmpfs           3.9G     0  3.9G   0% /sys/firmware

Я увеличил размер образа диска до 160 ГБ в настройках Docker для Windows и применил изменения, однако при перезапуске контейнера новое дисковое пространство не было выделено.

Я совершенно не понимаю, связана ли эта проблема с контейнером, который сообщает об использовании на 100%, или с томом, где фактически хранятся данные.


person algorhythm    schedule 12.05.2020    source источник


Ответы (1)


Я тоже столкнулся с этой проблемой некоторое время назад. Я не уверен, добавлено ли исправление в стабильную версию, но я думаю, что они исправили его в версии Edge.

В любом случае, вы можете сделать это через диспетчер Hyper-V. Вы нажимаете элемент «Редактировать диск», и затем вы можете увеличить размер диска там. Сначала убедитесь, что вы полностью выключили и вышли из Docker.

введите здесь описание изображения

Кроме того, после того, как я сделал свой, я оптимизировал его, например:

Чтобы оптимизировать/уменьшить виртуальную машину (в Powershell):

  1. Mount-VHD -Path "C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\DockerDesktop.vhdx" -ReadOnly
  2. Optimize-VHD -Path "C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\DockerDesktop.vhdx" -Mode Full
  3. Dismount-VHD -Path "C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks\DockerDesktop.vhdx
person J. Scott Elblein    schedule 12.05.2020
comment
Спасибо большое! Это сводило меня с ума. Других упоминаний об этом событии я не нашел. Молодец, что нашел решение. - person algorhythm; 12.05.2020
comment
@algorhythm Рад помочь. Была также проблема, которую я обнаружил, сталкиваясь с проблемой, когда после того, как я наконец выполнил шаги, описанные выше, пользовательский интерфейс DD не отражал новые изменения размера (этот ползунок в разделе «Ресурсы»). На самом деле я был тем, кто сообщил об ошибке, которую они подтвердили и выпустили исправление в версии Edge 2.2.3.0, смеется. github.com/docker/for-win/issues/5881 - person J. Scott Elblein; 13.05.2020