Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to uninstall Docker Machine under Windows 10

I didn't found any solution to remove Docker Machine from my Windows 10 Edu, but documentation for Docker Machine on Windows is very rare.

I'm a newbie on Powershell so maybe there is a simple command that I didn't found...

like image 667
Thibault Loison Avatar asked Feb 10 '17 14:02

Thibault Loison


People also ask

How do I remove docker from Windows PowerShell?

If you want to remove the container first run "docker ps -a" to get a list of running containers. If your container is in the list run "docker stop [container_id]". If your container is stopped or not running than run "docker rm [container_id]".


2 Answers

go to C:\Program Files\Docker, by opening cmd as administrator.

run takeown /R /F *

run ICACLS * /T /Q /C /RESET,

** don't run in Program files folder, otherwise you will go to bootloop after restart, go to Docker folder first.

Create the small file with following content and saved with extension .ps1 in Program files folder, and right click on it and Run with Powershell.

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" }
like image 188
GD- Ganesh Deshmukh Avatar answered Sep 21 '22 06:09

GD- Ganesh Deshmukh


I have the same problem but I fix it with two steps.

  1. Stop docker service
  2. End task the docker from task manager

Then try normal uninstall.

like image 39
Mohamed Salah Avatar answered Sep 20 '22 06:09

Mohamed Salah