Docker作为一个容器化技术的热门工具,常常用于服务的快速布设和运维。个人也是沉迷于Docker带来的便利,习惯在Linux服务器上使用Docker。但是由于,最近服务器到期了,并且最近没有续费的打算,所以急需在Windows上进行Docker的安装。
之前实则在win10上安装过Docker,但是,由于我的win10是家庭版的,当时是通过Docker Toolbox进行的安装,还额外安装了虚拟机,整个体验比较差,后来就删除了。
由于Windows10家庭版中默认没有Hyber-V,所以通过一般途径是无法安装 Docker最新版 了😕。
*[Docker最新版]: 这里的docker最新版,特指Docker Desktop
但是,谁奈万能的网友十足给力,找到了家庭版开启Hyber-V的方法 :smile:,不敢私藏,这就分享如下:
by using Docker Desktop
第一就是代码糊脸,通过将下方的代码复制到记事本中,并另存为enable_hyber_v.cmd,之后直接右击该脚本,通过管理员模式运行,就会看到已经开始安装Hyber-V了,整个安装过程时间较久。
pushd "%~dp0"
dir /b %SystemRoot%servicingPackages*Hyper-V*.mum >hyper-v.txt
for /f %%i in ( findstr /i . hyper-v.txt 2^>nul ) do dism /online /norestart /add-package:"%SystemRoot%servicingPackages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
经过一段时间的耐心等候之后,会提示回复Y进行重启,重启之后,就可以看到自己的Hyber-V已经安装好了。:dog:

如果是掌握“魔法”的小伙伴,可以通过直接访问Docker Desktop for Windows无需注册来到下图的页面,获取最新的Windows下的Docker安装包。
这里我也把官方的下载链接贴在这里:
官方下载链接🔗

传送门🚪
这里特分享一个国内的Docker资源网站:DaoCloud,上面也有windows下的docker的下载,但是!我要说但是了,上面的资源版本很旧,我反正用那个没有安装成功,都没有机会点击下一步,如果有兴趣的童鞋可以试一下。
下载好之后,直接进行运行即可,下图为安装截图
如果有问题,可以参考文后的附录

安装好之后,直接点击关闭重启即可。

完结★,°:.☆( ̄▽ ̄)/$:.°★ 。
欢迎随时提问,这里会将问题汇总进行补充。
如果直接运行安装提示检测到是Home version的系统之类的话,可以通过修改注册表进行绕过,绕过之后,理论上就可以进行安装了,安装完之后,就算改回也不会影响使用。

By the way, 我是用DaoCloud上的旧版时,遇到了这个问题,但是即使修改了注册表也没有用,这才使用的最新版,所以如果使用了DaoCloud里的安装包之后,遇到这个问题,该方初步断定无效。
打开注册表,定位到
HKEY_LOCAL_MACHINEsoftwareMicrosoftWindows NTCurrentVersion,点击current version,在右侧找到EditionId,右键点击EditionId选择“修改“,在弹出的对话框中将第二项”数值数据“的内容改为Professional,然后点击确定。
也可以使用命令直接修改REG ADD "HKEY_LOCAL_MACHINEsoftwareMicrosoftWindows NTCurrentVersion" /v EditionId /T REG_EXPAND_SZ /d Professional /F修改之前,请备份注册表;重启计算机后,注册表中的值将恢复,但不会影响Docker使用。
安装重启之后,提示如下图:

这是在说我们需要升级WSL2的内核了,直接点击链接,到官网上进行升级即可。
为了方便,我直接把下载链接放在这里,国内下载速度虽慢,但由于比较小,还是可以下载下来的,如果大家想下载快点儿,也可以到我分享的资源下载,两个,链接分别放出来:
官网:适用于 x64 计算机的 WSL2 Linux 内核更新包
个人转存CSDN:适用于 x64 计算机的 WSL2 Linux 内核更新包
这里额外说明几点:
适用于 Linux 的 Windows 子系统
wsl -l -v命令在windows下查看当前系统下的分发,及其运行状态。wsl$从 Windows 访问 Linux 文件。在Docker Desktop中有一个例子,可以在界面上进行运行,但是有一点,就是许多包都是需要引入外网的,这里为了方便,就修改了其中的Dockerfile中的部分内容,加入了国内源,可以正常地进行运行演示。
由于这里不能传文件,我还是实例上传到CSDN,需要的同学可以来下载,下载之后,直接解压到C:Users<你的用户名>getting-started目录下,将原文件覆盖掉就好了。
传送门🚪