Как переместить Docker на другой диск в Windows

Tags: Docker , Windows

Published 2 июня 2024 г. 9:51

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

И тут начались проблемы :-) Может некоторые замечали, что при установке Docker на Windows отсутствует опция выбора диска размещения приложения. Docker устанавливается на диск C по умолчанию (и потребляет всю память, что там есть, для образов). К сожалению, иногда памяти на диске C может быть недостаточно и Windows начинает сеять панику и выдавать предупреждение о её недостатке при попытке загрузить образы.

К счастью, есть решение этой проблемы \(^_^)/ Спасибо доброму человеку с ником ungureanuovidiu на форуме Docker и его комментарию по установке приложения https://forums.docker.com/t/docker-installation-directory/32773/17

Для того, чтобы установить Docker на другом диске, необходимо открыть терминал (win + x (латинская) на клавиатуре):

Затем перейти в папку, где хранится установщик Docker (обычно это Загрузки). Можно посмотреть путь к файлу в его свойствах:

Копируем расположение файла и переходим в директорию

Далее вводим команду

start /w “” “Docker Desktop Installer.exe” install --installation-dir=G:\Docker

где нужно заменить G на диск, который вам необходим для установки Docker.

После установки проверьте работу Docker Desktop (откройте приложение).

Затем (спасибо инструкции здесь) выполняем следующие команды:

1. Закрываем Docker Desktop

2. Снова открываем командную строку

3. Смотрим список имеющихся машин Linux (WSL):

wsl --list -v

В списке должны быть эти позиции:

  NAME                   STATE           VERSION
* docker-desktop         Running         2
  docker-desktop-data    Running         2

4. Выключаем WSL:

wsl --shutdown

Вывод консоли будет таким:

  NAME                   STATE           VERSION
* docker-desktop         Stopped         2
  docker-desktop-data    Stopped         2

5. Далее создаем путь (с подпапками):

mkdir D:\Docker\wsl\data\

Замените D на тот диск, где установлен Docker.

6. Экспортируйте контейнеры и их данные. Этот шаг может занять некоторое время в зависимости от размера исходного файла ext4.vhdx:

wsl --export docker-desktop-data "D:\Docker\wsl\data\docker-desktop-data.tar"

7. Снимите регистрацию данных контейнера с WSL. Это также автоматически удалит файл ext4.vhdx из исходного местоположения:

wsl --unregister docker-desktop-data

8. Импортируйте данные контейнера, но сохраните их в другом месте (например, на диске D:, как указано выше). Это автоматически создаст файл ext4.vhdx из резервной копии:

wsl --import docker-desktop-data "D:\Docker\wsl\data" "D:\Docker\wsl\data\docker-desktop-data.tar" --version 2

9. Удалите экспортированный файл .tar: D:\Docker\wsl\data\docker-desktop-data.tar

10. Запустите Docker и контейнеры и наслаждайтесь тем, что он не забивает ваш системный диск).

Итак, надеюсь данное чтиво было полезным и спасло немного нервных клеток ;-) Постараюсь выпускать небольшие гайды по подобным проблемам, так как это сильно экономит время (и успокоительное). 

До скорых встреч!


Похожие публикации

Нет похожих публикаций