本人之前写Redis书和Spring Cloud Alibaba书时,发现一些分布式组件更适合安装在linux环境,而在搭建Redis等集群时,更需要linux环境。

    本人日常练习代码和写书所用的机器,操作系统是windows 10家庭版,为了模拟linux环境,一种解决方法是安装docker。刚开始安装时,发现装不上,后来请教了别人,同时在网上找了些方法后,最终安装成功了。

    自认为这个步骤不大顺利,中间也解决了若干问题,在这篇文章里,就详细列出安装步骤,并给出解决相关问题的方法,以供大家参考。

    第一步,新建一个txt文件并将后缀改为.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

    随后以管理员的身份运行上述cmd文件。如果提示要重启,则重启下。

    第二步,确认Hyper-V是否已经勾选,若未勾选,勾选下。该步骤可能也需重启电脑。

    

    第三步,以管理员身份打开cmd,同时运行命令,修改注册表。

   具体的做法是,在C:\Windows\System32目录下找到cmd.exe,右键点击,选择以管理员身份运行。

   在该cmd命令窗口里,执行如下的命令,通过修改注册表,把电脑伪装成win10专业版。

    REG ADD "HKEY_LOCAL_MACHINE\software\Microsoft\Windows NT\CurrentVersion" /v EditionId /T R
    这里请务必注意,通过上述命令修改注册表以后,下次重启电脑后,该注册表的值会改回去,所以修改后,请立即安装docker。

    第四步,从官网下载并安装docker。
    官网地址是这个:https://hub.docker.com/editions/community/docker-ce-desktop-windows

    安装好按提示重启即可。

    按照不少文档的说明,至此可以完成安装动作,不过安装好以后,我还遇到了如下问题。

    “WSL 2 installation is incomplete.”

 

    

 

 

    这说明,我使用的wsl2版本老了,需要我自己手动更新一下,按照找到的文档,我去微软官网下载最新版的wsl2。 

    链接地址是这个:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

    下载更新后,还出现了类似如下的问题:

    unable to resolve docker endpoint: open C:\Users\TomYuan\.docker\machine\machines\default\ca.pem: The system cannot find the path specified.
    网上对此的说明是,在电脑上之前安装过docker其它版本,我回想下还真是。    

    网上给出的解决方案是:卸载docker 19,删除对应环境变量,删除C:\Program Files\Docker下文件,重新安装docker

    不过,我只删除了如下图所示的Docker相关的环境变量,只是重启Docker,并没有卸载并安装,后来问题也解决了。

    

 

    安装好docker后,运行 docker -v命令,能看到版本号,这就能验证我装成功了。


 

  

posted on 2021-12-08 07:28  hsm_computer  阅读(689)  评论(1编辑  收藏  举报