🐳 Как ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ‚ΠΎΠΌΠ° Π΄Π°Π½Π½Ρ‹Ρ… Docker Π² Docker Desktop Π½Π° Windows

ИзмСнСниС Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Ρ‚ΠΎΠΌΠ° Π΄Π°Π½Π½Ρ‹Ρ… Docker с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ освобоТдСниС большого количСства мСста Π½Π° ТСстком дискС

by itisgood

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Docker Desktop для Windows, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ примСняСтся WSL2, всС ваши ΠΎΠ±Ρ€Π°Π·Ρ‹ ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ΠΎΠ² хранятся Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ‚ΠΎΠΌΠ΅ (vhdx).

Π­Ρ‚ΠΎΡ‚ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ТСсткий диск ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ автоматичСски ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ, ΠΊΠΎΠ³Π΄Π° Π΅ΠΌΡƒ трСбуСтся большС мСста, ΠΏΠΎΠΊΠ° Π½Π΅ достигнСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄Π΅Π»Π°.

Но Ссли ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ мСсто с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ docker system prune –all ΠΈΠ»ΠΈ docker volume prune, Ρ‚ΠΎ vhdx Π½Π΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡΡ автоматичСски.

Windows ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π΄Π²Π° способа Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ диск, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ пространство.

1. ИспользованиС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Optimize-VHD

Команда Optimize-VHD ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ распрСдСлСния пространства Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΉΠ»Π°Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ТСсткого диска.

Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π±Π»ΠΎΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ пСрСставляСт Π±Π»ΠΎΠΊΠΈ для Π±ΠΎΠ»Π΅Π΅ эффСктивной ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ, Ρ‡Ρ‚ΠΎ позволяСт ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ТСсткого диска.

Однако ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ фиксированных Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ТСстких дисков нСльзя.

Для запуска процСсса ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² PowerShell (ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ администратора) ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

Optimize-VHD -Path "path to your ext4.vhdx" -Mode Full
Если Π²Ρ‹ Π½Π΅ пСрСмСстили docker-desktop-data Π² Π½ΠΎΠ²ΠΎΠ΅ мСсто Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ Π΅Π³ΠΎ Π² Ρ‚ΡƒΡ‚:
%LOCALAPPDATA%\Docker\wsl\data\ext4.vhdx

2. ИспользованиС Diskpart для измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° VHD

Если Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Optimize-VHD Π² Windows (часто это Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π² Windows Home), Ρ‚ΠΎ для измСнСния Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ диска docker-desktop-data ext4.vhdx ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄.

Для уплотнСния Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ диска ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ diskpart.

Для этого ΠΎΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ подсистСму Windows для Linux

wsl --shutdown
ПослС этого ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ diskpart ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ваш docker-desktop ext4.vhdx
diskpart
select dockhdd file="path to your ext4.vhdx"

Π’ качСствС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ я Π²Ρ‹Π±Ρ€Π°Π» vdisk, Π½ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π·Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎ своСму ΡƒΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΡŽ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ, ΡƒΠΏΠ»ΠΎΡ‚Π½ΠΈΡ‚ΡŒ, ΠΎΡ‚ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ диск ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ diskpart.

attach dockhdd readonly
compact dockhdd

[ ... this could take some time ]

detach dockhdd
close

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π― надСюсь, Ρ‡Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ ΠΎΠ± ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ТСсткого диска Docker Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для вас ΠΈ Π²Ρ‹ смоТСтС Π΅Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ.

см. Ρ‚Π°ΠΊΠΆΠ΅:

 

 

Loading

You may also like

Leave a Comment