Docker学习之Windows Home上安装Docker Desktop的完整图文教程

Windows Home上安装Docker Desktop的完整图文教程

记录安装过程,文字略显沙雕✧٩(ˊωˋ*)و✧

来自Docker官方文档:

支持的平台

Docker Engine可 通过Docker Desktop 在各种Linux平台, macOS和Windows 10上以静态二进制安装的形式使用。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第1张图片

我想在我的windows上安装docker,所以我选择了Windows版Docker桌面 。

来自Docker官方文档:

Windows的Docker桌面是Microsoft Windows的Docker 的社区版本。您可以从Docker Hub下载适用于Windows的Docker桌面。

该页面包含有关在Windows 10 Pro,Enterprise和Education上安装Docker Desktop的信息。如果要查找有关在Windows 10 Home上安装Docker桌面的信息,请参阅在Windows Home上安装Docker桌面。

不幸的是,我的是 Windows Home 版,所以我又去了 在Windows Home上安装Docker桌面 。

来自Docker官方文档:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第2张图片

先不急着下载安装,咱先看看要求:

来自Docker官方文档:

系统要求

Windows 10 Home机器必须满足以下要求才能安装Docker Desktop:

  • 安装Windows 10版本2004或更高版本。
  • 在Windows上启用WSL 2功能。有关详细说明,请参阅 Microsoft文档。
  • 要在Windows 10 Home上成功运行WSL 2,需要满足以下硬件先决条件:
    • 具有二级地址转换(SLAT)的 64位处理器
    • 4GB系统内存
    • 必须在BIOS设置中启用BIOS级硬件虚拟化支持。有关更多信息,请参见 虚拟化。
  • 下载并安装Linux内核更新程序包。

注意

Docker基于Microsoft对Windows 10操作系统的支持生命周期在Windows上支持Docker桌面。有关更多信息,请参见 Windows生命周期概况。

首先看看我的windows版本:

参考: Windows Linux子系统Windows 10安装指南 - 更新到WSL 2

通过选择Windows徽标键+ R来检查Windows版本,键入winver,然后选择“ 确定”。(或在Windows命令提示符中输入命令ver)。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第3张图片
win版本2

其实选择Windows徽标键+ R,输入CMD,打开Windows命令提示符,就可以看到版本了。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第4张图片

很不幸,我的版本不符合。。。

ennnnn,我的版本竟然不是最新的,毕竟windows自动更新我可是没有关掉的啊,不科学啊,微软这么好了?于是我去搜了一下:

来自Windows 10版本2004和Windows Server版本2004

截至2020年7月22日的当前状态

Windows 10版本2004适用于运行Windows 10版本1903和1909的设备的用户,他们通过Windows Update手动寻求“检查更新”。现在,我们正在开始新的阶段。使用到目前为止我们已经完成的基于机器学习(基于ML)的培训,我们正在增加选择要自动更新到即将终止服务的Windows 10版本2004的设备的数量。我们将继续在所有阶段训练机器学习,以智能地推出Windows 10的新版本并提供流畅的更新体验。建议的维修状态为“半年频道”。

嗯,微软还是那个微软,人家并没放过你,只是在准备一网打尽而已。

所以我又去了获取Windows Update Assistant,把我的windows版本更新到2004,希望它没有什么大问题,阿弥陀佛。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第5张图片

话说这个版本是2020年5月才开始陆续推送更新,Docker就开始要求使用windows版本最低2004,有点秀啊。

趁着下载win2004时我搜了搜,还是有大神跑得快的,早就开始玩了-> Windows 10 2004 (20H1) 安装 Docker Desktop for Windows (2.3.0.2) 以 WSL 2 方式运行容器 。

经过一段时间的等待,我已经更新到win2004了。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第6张图片

接下来是第二个条件-启用WSL 2功能。

WSL了解一下:

WSL(Windows Subsystem for Linux):Windows Linux子系统

Windows Subsystem for Linux (WSL)

What is the Windows Subsystem for Linux? : WSL可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。

What is WSL 2? : WSL 2 是适用于 Linux 的 Windows 子系统体系结构的一个新版本,它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件。 它的主要目标是提高文件系统性能,以及添加完全的系统调用兼容性

比较 WSL 2 和 WSL 1

WSL 和 WSL2 简单对比

WSL就是让Linux系统在Windows系统上运行,类似VM的功能,但区别于VM,WSL 2确实使用了VM,但它是受管理的并在后台运行,而不需要VM配置或管理。

启用WSL 2,首先看看内存条件:我的系统内存是16G,满足。

其次根据虚拟化看看我的电脑有没有启用虚拟化:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第7张图片

幸运的我,已经启用了,不用再进BIOS中折腾了。

最后还剩一个条件:“具有二级地址转换(SLAT)的 64位处理器”。我得电脑是AMD R5 3500U,我也不晓得支不支持SLAT,感觉是支持的,但是还是亲眼看看才能安心啊,于是问了度娘得到了答案。

一个方法是:使用微软提供的 CPU信息查看工具 Coreinfo 即可检查。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第8张图片
Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第9张图片

我下载了这个工具包,然后运行不了,一闪即退,很扎心。后面看到了需要管理员权限,就打开了Windows powerShell(管理员)(可以通过鼠标右键桌面win图标,也可以通过win+x,然后A 打开)。

然后进入Coreinfo64.exe所在目录(我的是64位系统,位置是在D:\java develop enviorment\Coreinfo),然后执行命令.\Coreinfo.exe -v,就得到了我想要的结果了:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第10张图片

“*”表示支持,“-”表示不支持。很明显,我的是支持SLAT的。

在问度娘如何查看CPU是否支持SLAT时,还看到了其他方式:

参考 :如何判断CPU支持SLAT|支持虚拟化技术

其中方式二,我这验证也是符合滴。

至此在Windows 10 Home上启用WSL 2需要满足的硬件先决条件我已经全部满足了。

接下来就是在我的Windows Home上启用WSL 2功能,参阅 Microsoft文档-Windows Linux子系统Windows 10安装指南 。

首先,要启用“ Linux的Windows子系统”可选功能。

来自Microsoft官方文档:

安装适用于Linux的Windows子系统

在Windows上安装任何Linux发行版之前,必须启用“ Linux的Windows子系统”可选功能。

管理员身份打开PowerShell并运行:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

要仅安装WSL 1,现在应该重新启动计算机并继续安装您选择的Linux发行版,否则请等待重新启动并继续更新到WSL2。了解有关比较WSL 2和WSL 1的更多信息。

使用键盘win+x,A打开Windows PowerShell(管理员),复制粘贴加回车(你要是想手敲的话也是阔以滴),一波操作后,PowerShell界面有100%的进度条就是安装成功(我忘了截图了,假装此处有图)。

然后键盘键入win键,输入启用或关闭Windows功能,找到这项,回车,查看一下是否启用了Linux的Windows子系统这项。如下图:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第11张图片
Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第12张图片

好了,接下来是重启。。。

重启完成,win+R输入cmd打开命令行工具,输入wsl

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第13张图片

我已经可以使用wsl命令了,重启之前是没有的:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第14张图片

OK,接下来是更新到WSL 2。

来自Microsoft官方文档:

更新到WSL 2

要更新到WSL 2,您必须满足以下条件:

  • 运行Windows 10,更新为2004版,内部版本19041或更高版本。
  • 通过选择Windows徽标键+ R来检查Windows版本,键入winver,然后选择“ 确定”。(或ver在Windows命令提示符中输入命令)。如果您的版本低于19041,请更新到最新的Windows版本。获取Windows Update Assistant。

启用“虚拟机平台”可选组件

在安装WSL 2之前,必须启用“虚拟机平台”可选功能。

管理员身份打开PowerShell并运行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

重新启动计算机以完成WSL安装并更新到WSL 2。

WSL 2更新的要求就是在Windows Home上安装Docker的要求,我已经做了验证,并把我的系统版本升级为win 2004了,所以就不做重复操作了。

启用“虚拟机平台”可选功能的操作跟之前的启用“Linux的Windows子系统”可选功能的操作相同,只是命令不同而已,此处不再赘述。

不过要说一下另一种方式:

键盘键入win键,输入启用或关闭Windows功能,找到这项,回车,打开启用或关闭Windows功能窗口(上面操作过)。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第15张图片

可以看到虚拟机平台未启用,勾选,确定(需要联网)。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第16张图片

稍作等待后成功,但是需要重启配置才能生效。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第17张图片

重启。。。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第18张图片

重启完成,该功能已启用。

接下来将WSL 2设置为默认版本。

来自Microsoft官方文档:

将WSL 2设置为默认版本

在安装新的Linux发行版时,以管理员身份打开PowerShell,并运行以下命令以将WSL 2设置为默认版本:

wsl --set-default-version 2

运行以下命令后,您可能会看到此消息:WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel。请点击链接(https://aka.ms/wsl2kernel),然后从我们文档的该页面安装MSI,以便在您的计算机上安装Linux内核,以供WSL 2使用。一旦安装了内核,请再次运行该命令,它应该成功完成而不显示消息。

注意

从WSL 1到WSL 2的更新可能需要几分钟才能完成,具体取决于目标发行版的大小。如果您正在从Windows 10周年更新或创建者更新中运行WSL 1的较旧(旧版)安装,则可能会遇到更新错误。请按照以下说明卸载和删除所有旧发行版。

如果wsl --set-default-version结果为无效命令,请输入wsl --help。如果--set-default-version未列出,则表明您的操作系统不支持它,您需要更新到2004,Build 19041或更高版本。

从开始到现在,我的windows版本已经更新为win2004了,WSL 2也安装了,中间顺风顺水(运气还是不错的,没出现什么奇奇怪怪的事)。

所以上面这条命令我的WSL是支持的:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第19张图片

所以键入wsl --set-default-version 2命令:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第20张图片

。。。我裂开了。。。

这脸打的啪啪的。。。

为了俺的尊严和求知欲,俺问了度娘,然鹅,我把度娘折腾三百遍啊三百遍,度娘是不知道。

最终我又回到了Microsoft的WSL官方文档,在这里我找到了搜寻这种无厘头问题的渠道。

我搜了一下--set-default-version,发现了这么个issue:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第21张图片

这不就是我出现的问题吗,偶买噶,官方还是给力滴。于是我就点进去寻找答案:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第22张图片

hhhhh,很高兴,有人遇见相同的问题,并且还解决了,赶紧自己试试去。

来自Microsoft官方文档:

下载 Linux 内核更新包

请下载适用于 x64 计算机的最新 WSL2 Linux 内核更新包。

备注:

如果使用的是 ARM64 计算机,请下载 ARM64 包。

wsl2_14

下载成功,双击安装。

安装完成后,打开Windows PowerShell(管理员),再次执行wsl --set-default-version 2命令。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第23张图片

成功,此处应该欢呼。。。

wsl2_16

因为我已经下载更新安装了WSL 2,所以没有显示官方说的①的那条消息,而是直接到达②的位置,即我已经成功将WSL 2设为默认版本了。

接下来选择安装Linux发行版 ,按照文档操作进入Microsoft商店 下载安装选择的Linux发行版,然后启动。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第24张图片

首先输入用户名,然后两次输入密码,安装Linux发行版成功(我安装的是Ubuntu 20.04 LTS)。

来自Microsoft官方文档:

将发行版本设置为WSL 1或WSL 2

您可以通过打开PowerShell命令行并输入命令来检查分配给已安装的每个Linux发行版的WSL版本(仅在Windows Build 19041或更高版本中可用):wsl -l -v

wsl --list --verbose

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第25张图片

来自Microsoft官方文档:

将发行版本设置为WSL 1或WSL 2

要将发行版设置为由任一版本的WSL支持,请运行:

wsl --set-version  

确保用发行版的实际名称和数字“ 1”或“ 2” 代替。您可以随时通过运行与上述相同的命令将其替换为WSL 1,但是将“ 2”替换为“ 1”。

此外,如果要将WSL 2设置为默认体系结构,则可以使用以下命令:

wsl --set-default-version 2

这将设置安装到WSL 2的任何新发行版的版本。

上图可以看到,我的Linux发行版都是运行在WSL 2上的,因为我之前已经将WSL 2设为默认了版本了。

接下来让我们回到在Windows Home上安装Docker的主线剧情上:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第26张图片

经过上面一系列操作,①②③都已经完成,包括④也在WSL 2更新安装时一起完成,所以安装在Windows Home上安装Docker的前置环境要求已经全部满足,接下来就是安装Docker了。

首先,下载Windows Home上的Docker安装包 。

来自Docker官方文档:

在Windows 10 Home上安装Docker桌面

  1. 双击Docker Desktop Installer.exe运行安装程序。

    如果尚未下载安装程序(Docker Desktop Installer.exe),则可以从 Docker Hub进行下载。它通常会下载到您的Downloads文件夹中,或者您可以从Web浏览器底部的“最近下载”栏中运行它。

  2. 出现提示时,请确保在“配置”页面上选择了“ **启用WSL 2功能”**选项。

  3. 请遵循安装向导上的指示信息授权安装程序并继续进行安装。

  4. 安装成功后,请单击“ **关闭”**以完成安装过程。

按照官方文档进行傻瓜式安装。。。

来自Docker官方文档:

启动Docker

Docker Desktop在安装后不会自动启动。要启动Docker Desktop,请搜索Docker,然后在搜索结果中选择Docker Desktop

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第27张图片

当状态栏中的鲸鱼图标保持稳定时,表明Docker Desktop正在运行,并且可以从任何终端窗口访问。

任务栏上的鲸鱼

初始化完成后,Docker Desktop将启动入门教程。本教程包括一个简单的练习,以构建示例Docker映像,将其作为容器运行,将映像推送并保存到Docker Hub。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第28张图片

恭喜你!您现在可以在Windows Home上成功运行Docker Desktop。

卸载Docker

要从Windows Home机器上卸载Docker Desktop:

  1. 从Windows 开始菜单中,选择设置 > 应用程序 > 应用程序及功能
  2. 从“ 应用程序和功能”列表中选择Docker Desktop,然后选择“ 卸载”
  3. 单击卸载以确认您的选择。

注意

卸载Docker Desktop将破坏计算机本地的Docker容器和映像,并删除应用程序生成的文件。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第29张图片

上图是我安装成功后进入设置后的截图,可以看到,我之前下载安装的Linux发行版已经显示了,表示我可以启用。

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第30张图片

并且命令行中也可以使用docker命令,并且可以使用 wsl -l -v 查看到安装的Linux发行版了。

至此,Windows Home上安装Docker Desktop已经完成了,接下来就是Docker Desktop的使用了。

首次打开Docker Desktop时,就是如下界面,一个简单的构建docker容器和使用的教程:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第31张图片

点击Start就可以开始,按照教程即可轻松完成。

完成后即可访问:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第32张图片

并且会把这个教程构建的容器镜像推送到我们的Docker Hub中

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第33张图片

而我们也可以直接在Docker Desktop中管理这个容器:

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第34张图片

以上是Docker Desktop的使用教程。

Docker Desktop的一些其他设置参阅Docker设置对话框 。

接下来我们在命令行窗口测试使用:

来自Docker官方文档:

测试安装

  1. 打开一个终端窗口(命令提示符或PowerShell,而不是 PowerShell ISE)。

  2. 运行docker --version以确保您具有受支持的Docker版本:

    > docker --version
    
    Docker version 19.03.1
    
  3. 拉你好世界图像从泊坞窗枢纽和运行的容器:

    > docker run hello-world
    
    docker : Unable to find image 'hello-world:latest' locally
    latest: Pulling from library/hello-world
    1b930d010525: Pull complete
    Digest: sha256:c3b4ada4687bbaa170745b3e4dd8ac3f194ca95b2d0518b417fb47e5879d9b5f
    Status: Downloaded newer image for hello-world:latest
    
    Hello from Docker!
    This message shows that your installation appears to be working correctly.
    ...
    
  4. 列出从Docker Hub下载的hello-world 映像

    > docker image ls
    
  5. 列出hello-world 容器(显示“从Docker向您好!”后退出的容器):

    > docker container ls --all
    
  6. 通过运行一些帮助命令来浏览Docker帮助页面:

    > docker --help
    > docker container --help
    > docker container ls --help
    > docker run --help
    

Docker学习之Windows Home上安装Docker Desktop的完整图文教程_第35张图片

至此,已经成功在Windows Home上安装Docker,可以愉快的(苦逼)蹂躏(被虐)DockerCLI了。

ps: 有兴趣可以玩玩这个Docker 101教程

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