# Освобождает место, которое занял Docker, НЕ трогая базу сервера (том docker_l2db).
# Запуск: powershell -ExecutionPolicy Bypass -File cleanup-docker.ps1

Write-Host "Было занято:" -ForegroundColor Cyan
docker system df

Write-Host "`nЧищу кэш сборок..." -ForegroundColor Yellow
docker builder prune -af

Write-Host "`nЧищу неиспользуемые образы (том с базой не трогаю)..." -ForegroundColor Yellow
docker image prune -af

Write-Host "`nЧищу остановленные контейнеры..." -ForegroundColor Yellow
docker container prune -f

Write-Host "`nСтало:" -ForegroundColor Cyan
docker system df

Write-Host "`nТома (базa должна остаться):" -ForegroundColor Cyan
docker volume ls

Write-Host @"

Место освобождено внутри виртуального диска Docker, но сам файл vhdx на C: не
сжимается автоматически. Чтобы вернуть место Windows:
  1) wsl --shutdown
  2) Optimize-VHD -Path "$env:LOCALAPPDATA\Docker\wsl\disk\docker_data.vhdx" -Mode Full
     (нужен Hyper-V; если команды нет - Docker Desktop -> Settings -> Resources -> Disk -> Clean up)
"@ -ForegroundColor DarkGray
