前言
Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。
广泛应用于分布式架构的容器,本来应该应用在服务端,但是由于本人的电脑是Window10,想要去编译Android源码,so选择了此容器进行系列操作。
此处特别说明 Docker DeskTop与Docker tooBox是两个东西,Docker DeskTop是基于Win10的Hyper-V虚拟机的,Docker tooBox是基于Win10以下VM虚拟机的,两者不可混装。
检查
1.打开如图所示检查虚拟化是否已经支持,若未支持则重启并进入BIOS打开虚拟化支持,此操作不赘述
2.检查WSL2是否开启,默认应该是开启的,安装Docker Desktop时,会问是否需要使用WSL2(基于Windows的Linux子系统),若不适用,就会使用Hyper-v虚拟机运行,不过相比于虚拟机,子系统在性能方面更加出色。我们即使打开了如下图所示的Windows功能可能还是会发生报错,看下文解决(如果没有打开,请先百度如何打开wsl。)
安装
- 将下面代码复制为文本文件并将*.txt重命名为Hyper-V.cmd,以管理员身份运行
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
说明:因为Win10家庭版没有安装虚拟机,所以需要通过如上去安装一个,之后进入【控制面板】_>【程序】【启用或关闭Windows功能】找到Hyper-V打上勾
- 以管理员身份打开cmd,执行如下命令
REG ADD "HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion" /v EditionId /T REG_EXPAND_SZ /d Professional /F
说明:此处是将注册表的值修改为Professional以使能正常运行,即伪装成win10专业版