Win10安装docker遇到的坑

记录下Win10安装docker遇到的坑:
首先win10是分版本的,这里举例其中两个版本“家庭版”和“企业版”。我电脑的操作系统之前是家庭版的,安装了Docker Desktop,又启用了hyper -v ,安装成功后使用docker version可以查看版本号,但是执行docker常用的命令,就报错。后发现家庭版的要装 Docker Toolbox,遂又换成此版本,发现还是报错,网上各种说法都有,有虚拟机原因啊、有的说是家庭版就不能安装。后面没办法,把系统升级成win10专业版,下载InstallDocker.msi安装成功查看版本是1.12.3,使用爽的一笔。后面我又手痒,感觉1.12.3太低想升级。查资料想看看有没有偷懒的办法直接升级,事实告诉我,别浪费时间了,净扯淡。卸载重装,下载了Docker Desktop4.0.0 安装成功后我又遇到了第一次的问题,执行任何Docker的命令(images、ps等)报错,瞬间崩溃。。。
还是打起精神,仔细打量重启docker,弹窗提醒我看一个官网文档,后面按着步骤解决了。这一路太坎坷…

步入正题,问题与解决方案如下:

   **安装Docker Desktop后,查询版本成功,执行命令会报错**:

error during connect: This error may indicate that the docker daemon is not running.: Get “http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/containers/json”:open//./pipe/docker_engine: The system cannot find the file specified.

解决方案:
参考官方:https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-4—download-the-linux-kernel-update-package

步骤 4 - 下载 Linux 内核更新包

  1. 下载最新包:
    o 适用于 x64 计算机的 WSL2 Linux 内核更新包
    备注
    如果使用的是 ARM64 计算机,请下载 ARM64 包。 如果不确定自己计算机的类型,请打开命令提示符或 PowerShell,并输入:systeminfo | find “System Type”。 警告: 在非英语 Windows 版本中,你可能需要修改搜索文本,例如在德语中为 systeminfo | find “Systemtyp”。
  2. 运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)
    安装完成后,请继续执行下一步 - 在安装新的 Linux 分发时,将 WSL 2 设置为默认版本。 (如果希望将新的 Linux 安装设置为 WSL 1,请跳过此步骤。)
    备注
    有关详细信息,请参阅 Windows 命令行博客上的文章对更新 WSL2 Linux 内核的更改。

步骤 5 - 将 WSL 2 设置为默认版本

打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:
PowerShell复制
wsl --set-default-version 2

步骤 6 - 安装所选的 Linux 分发

  1. 打开 Microsoft Store,并选择你偏好的 Linux 分发版。
    Win10安装docker遇到的坑_第1张图片

单击以下链接会打开每个分发版的 Microsoft Store 页面:
o Ubuntu 18.04 LTS
o Ubuntu 20.04 LTS
o openSUSE Leap 15.1
o SUSE Linux Enterprise Server 12 SP5
o SUSE Linux Enterprise Server 15 SP1
o Kali Linux
o Debian GNU/Linux
o Fedora Remix for WSL
o Pengwin
o Pengwin Enterprise
o Alpine WSL
2. 在分发版的页面中,选择“获取”。
Win10安装docker遇到的坑_第2张图片

首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。
然后,需要为新的 Linux 分发版创建用户帐户和密码。
Win10安装docker遇到的坑_第3张图片

祝贺你!现已成功安装并设置了与 Windows 操作系统完全集成的 Linux 分发!
安装 Windows 终端(可选)
Windows 终端可启用多个选项卡(在多个 Linux 命令行、Windows 命令提示符、PowerShell 和 Azure CLI 等之间快速切换)、创建键绑定(用于打开或关闭选项卡、复制粘贴等的快捷方式键)、使用搜索功能,以及使用自定义主题(配色方案、字体样式和大小、背景图像/模糊/透明度)。 了解详细信息。
安装 Windows 终端。

将分发版版本设置为 WSL 1 或 WSL 2
可打开 PowerShell 命令行并输入以下命令(仅在 Windows 内部版本 18362 或更高版本中可用),检查分配给每个已安装的 Linux 分发版的 WSL 版本:wsl -l -v
PowerShell复制
wsl --list --verbose
若要将分发版设置为受某一 WSL 版本支持,请运行:
PowerShell复制
wsl --set-version
请确保将 替换为你的分发版的实际名称,并将 替换为数字“1”或“2”。 可以随时更改回 WSL 1,方法是运行与上面相同的命令,但将“2”替换为“1”。
备注
从 WSL 1 更新到 WSL 2 可能需要几分钟才能完成,具体取决于目标分发版的大小。 如果从 Windows 10 周年更新或创意者更新运行 WSL 1 的旧(历史)安装,可能会遇到更新错误。 按照这些说明卸载并删除任何旧分发。
如果 wsl --set-default-version 结果为无效命令,请输入 wsl --help。 如果 --set-default-version 未列出,则表示你的 OS 不支持它,你需要更新到版本 1903(内部版本 18362)或更高版本。 如果你在使用 ARM64 版本 19041,那么当使用 PowerShell 时,此命令可能会失败;在这种情况下,你可使用命令提示符,而不是发出 wsl.exe 命令。
运行命令后如果看到此消息:WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel。 仍需要安装 MSI Linux 内核更新包。
此外,如果要使 WSL 2 成为你的默认体系结构,可以通过此命令执行该操作:
PowerShell复制
wsl --set-default-version 2
这会将安装的任何新分发版的版本设置为 WSL 2。

结束。

你可能感兴趣的:(docker,docker,windows)