Как удалить Docker из Windows?

Коллеги, добрый вечер.
Docker под Windows сдох и не хочет подниматься.
Операционная система Windows 10

Причём для того что бы он сдох, я не чего, не предпринимал.
Засосал обновление и не поднялся больше.

Пытаюсь удалить стандартными средствами
5d728240816e6743542160.png

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

Есть вариант использовать PowerShell
Но и тут не всё гладко.
PowerShell сообщает, мол ты не можешь выполнить этот скрипт, идите туда-то, спросите там-то .

Какой-то квест или посещение кабинетов госструктур.

Как удалить Docker из Windows ?
  • Вопрос задан
  • 6001 просмотр
Решения вопроса 1
IgorPI
@IgorPI Автор вопроса
PowerShell
$ErrorActionPreference = "SilentlyContinue"

    kill -force -processname 'Docker for Windows', com.docker.db, vpnkit, com.docker.proxy, com.docker.9pdb, moby-diag-dl, dockerd

    try {
        ./MobyLinux.ps1 -Destroy
    } Catch {}

    $service = Get-WmiObject -Class Win32_Service -Filter "Name='com.docker.service'"
    if ($service) { $service.StopService() }
    if ($service) { $service.Delete() }
    Start-Sleep -s 5
    Remove-Item -Recurse -Force "~/AppData/Local/Docker"
    Remove-Item -Recurse -Force "~/AppData/Roaming/Docker"
    if (Test-Path "C:\ProgramData\Docker") { takeown.exe /F "C:\ProgramData\Docker" /R /A /D Y }
    if (Test-Path "C:\ProgramData\Docker") { icacls "C:\ProgramData\Docker\" /T /C /grant Administrators:F }
    Remove-Item -Recurse -Force "C:\ProgramData\Docker"
    Remove-Item -Recurse -Force "C:\Program Files\Docker"
    Remove-Item -Recurse -Force "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Docker"
    Remove-Item -Force "C:\Users\Public\Desktop\Docker for Windows.lnk"
    Get-ChildItem HKLM:\software\microsoft\windows\currentversion\uninstall | % {Get-ItemProperty $_.PSPath}  | ? { $_.DisplayName -eq "Docker" } | Remove-Item -Recurse -Force
    Get-ChildItem HKLM:\software\classes\installer\products | % {Get-ItemProperty $_.pspath} | ? { $_.ProductName -eq "Docker" } | Remove-Item -Recurse -Force
    Get-Item 'HKLM:\software\Docker Inc.' | Remove-Item -Recurse -Force
    Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\Run -name "Docker for Windows" | Remove-Item -Recurse -Force
    #Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\UFH\SHC | ForEach-Object {Get-ItemProperty $_.PSPath} | Where-Object { $_.ToString().Contains("Docker for Windows.exe") } | Remove-Item -Recurse -Force $_.PSPath
    #Get-ItemProperty HKCU:\software\microsoft\windows\currentversion\UFH\SHC | Where-Object { $(Get-ItemPropertyValue $_) -Contains "Docker" }


Но не получится выполнить скрипт, с дефолтной конфигурацией PowerShell
Для этого, выполните от имени администратора
Set-ExecutionPolicy RemoteSigned

А потом

.\remove-docker.ps1

+ Следует вычистить весь хлам из реестра windows
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Ezhyg
@Ezhyg
PowerShell сообщает, мол ты не можешь выполнить этот скрипт, идите туда-то, спросите там-то

От имени админа? "Разрешения" включил?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы