Win10家庭版安装Docker for windows遇坑总结


因为做毕设需要结合本组学长开发的系统,不得已开始入坑学习docker,遇到的最大瓶颈没想到竟然是安装部分,下面是我安装过程中遇到的问题总结吧。

安装前的简单了解

最早的docker只能运行在linux上,所以以前如果想在win上使用docker只能通过虚拟机的方式。不过,近两年微软和docker达成了合作关系,也开发出了基于windows的docker引擎。
如果去网上查资料的话,大部分都比较老旧,会让你下载安装docker toolbox,但它总体来说不如docker for windows方便,所以此处不考虑toolbox的安装。(PS:toolbox和docker for windows不能很好的共存,同时安装会出现错误。而且即使安装过toolbox后再卸载之后安装docker for win也会出现一些错误,我下面会提到一些)
另外,很重要的一点,docker for win目前只支持win10,其他版本的win系统目前只能使用toolbox.

安装步骤

添加Hyper-v

在任何位置新建文本文件(桌面就行),把下面这段文件复制进去

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
pause

然后将文件另存为.cmd文件,再以管理员身份运行。差不多下载安装10分钟左右,会提示是否重启,然后输入y重启系统。
重启后,按如下操作查看Hyper-v是否启用
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
若上面Hyper-V前打勾了说明已成功安装Hyper-V。
PS:安装了Hyper-v之后,virtualbox和vmware之类的虚拟机就无法使用,具体解决方法自行百度

安装Docker for windows

因为docker for win目前只提供给windows专业版用户和企业版用户,因此我们需要伪装成专业版绕过安装检测。
由于Docker Desktop会在安装的时候检测系统版本,直接安装会显示安装失败。所以需要改下注册表绕过安装检测。
打开注册表,定位到HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion,点击current version,在右侧找到EditionId,右键点击EditionId 选择“修改“,在弹出的对话框中将第二项”数值数据“的内容改为Professional,然后点击确定
在这里插入图片描述
因为该注册表项在下次重启之后会自动还原,所以不必担心会对系统造成影响,而docker目前只在安装过程中检查该项,因此对未来docker的使用也不会有太大影响。
安装成功以后,会多出这样下图的图标:
在这里插入图片描述
此时,可以打开powershell,输入以下一些命令来验证是否有其他问题

docker version
docker ps
docker run hello-world

在这里插入图片描述
正常的话应该结果如上图所示。如果出现问题,很有可能是同时存在toolbox或toolbox的环境变量卸载残留。

其他问题

如果电脑里还同时有toolbox存在,建议卸载。具体卸载方式自行百度,卸载前需先删除其上的所有docker-machine,再卸载toolbox。卸载完了之后运行docker命令若还出现问题,请查看用户环境变量中是否有4个以DOCKER开头的变量,删除之,在Powershell中执行如下命令:docker-machine env -u
在这里插入图片描述
结果的最后一行会提示怎样设置环境,复制,然后执行,如下如所示:
复制第二红框 & 符号及后面的内容,复制到下面然后运行。
然后以管理员身份运行CMD或者PowerShell,重新尝试docker命令.

另外,如果想要关闭Hyper-v来使用vmware之类的虚拟机的话,需要在之前勾选Hyper-v处取消勾选,并以管理员方式打开powershell输入

bcdedit /set hypervisorlaunchtype off

之后重启即可正常使用其他虚拟软件。
重新开启hyper-v需要重新勾选之前取消的Hyper-v选项,然后以管理员方式打开powershell输入

bcdedit /set hypervisorlaunchtype auto

  • 14
    点赞
  • 91
    收藏
    觉得还不错? 一键收藏
  • 18
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值