如何在 Windows Server 2019 VPS 上安全卸载 Docker

如何在 Windows Server 2019 VPS 上安全卸载 Docker

我有一台 Windows Server 2019 VPS(!) 机器。即使我手动删除了文件夹“C:\ProgramData\docker”,Windows Server 2019 仍会不断重新创建该文件夹。

尝试 1:我安装的程序中没有提及 Docker,所以我无法轻松卸载它。

然后我尝试了这里列出的内容:https://github.com/docker/docs/issues/5905

PS C:\Users\Administrator> UnInstall-Package Docker -ProviderName DockerProvider -Force UnInstall-Package:无法找到软件包提供程序(DockerProvider)。第 1 行,字符:1

  • 卸载软件包 Docker -ProviderName DockerProvider -Force
  •   + CategoryInfo          : InvalidArgument: (Microsoft.Power...ninstallPackage:UninstallPackage)
    

[Uninstall-Package],异常 + FullyQualifiedErrorId:UnknownProviders,Microsoft.PowerShell.PackageManagement.Cmdlets.UninstallPackage

PS C:\Users\Administrator> UnInstall-Module DockerProvider -Force PackageManagement\Uninstall-Package:未找到与指定搜索条件和模块名称“DockerProvider”匹配的内容。在 C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:2194 字符:21

  • ... $null = PackageManagement\Uninstall-Package @PSBoundParameters
  •                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    • CategoryInfo:ObjectNotFound:(Microsoft.Power…ninstallPackage:UninstallPackage)[Uninstall-Package],异常
    • FullyQualifiedErrorId:NoMatchFound,Microsoft.PowerShell.PackageManagement.Cmdlets.UninstallPackage

尝试2:然后我就跑了.\docker-ci-zap.exe -folder "C:\ProgramData\docker(见https://github.com/jhowardmsft/docker-ci-zap/blob/master/docker-ci-zap.exe) 删除了所有容器和文件夹,但在 VPS 重启后它又恢复了。

尝试3:我打开服务器管理器并看到服务器角色“Hyper-V”已启用。

我现在怀疑这是在创建 docker 文件夹,但我不确定。删除此角色是否安全,不会破坏我的 VPS 吗?

答案1

您可以使用 PowerShell 脚本 Docker 之后清理.ps1,如文章所述 自行清理 Docker. 该脚本在运行之前会从计算机中清除所有 Docker 的痕迹docker-ci-zap.exe

如果你可以在设置 > 应用,然后您可以单击它并从那里卸载。

答案2

谨慎一点:我从未使用过 Docker,但我知道 Windows Server 和 Google。以下是我发现的内容,如果有帮助,请随时点赞。 https://learn.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/configure-docker-daemon#how-to-uninstall-docker

  1. 停止docker
docker swarm leave --force
docker ps --quiet | ForEach-Object {docker stop $_}
docker system prune --volumes --all
  1. 卸载
Uninstall-Package -Name docker -ProviderName DockerMsftProvider
Uninstall-Module -Name DockerMsftProvider
  1. 我不会在这里写更多内容,因为在进行可能产生不利影响的更改之前,你应该阅读所有详细信息

相关内容