最近几个月一直在忙别的事情,生活工作都很充实,所以也一直没时间更新博客,感觉这样不行!今天抽出一点时间记录些内容吧~
废话不多说,进入正题。(这也是一句废话)
我自己的环境是win10家庭版
但是docker要求专业版,为什么呢,因为docker需要一个功能支持。
在家庭版中是没有Hyper-V的,所以我们需要Hyper-V
为了不重装系统,我们自己装一个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
然后保存成Hyper-V.cmd 主要是cmd后缀,让它变成执行文件
执行完毕需要几分钟,过程是这个样子
最后提示你是否重启
当然是Y
然后我们有了功能基础,接下来我们安装docker
官网下载地址:https://docs.docker.com/docker-for-windows/install/
然后装完还提示了需要WSL2,根据提示可以到WSL2官网,但是那个下载非常非常慢
我这里提供一下三个安装包需要的自取
链接:https://pan.baidu.com/s/1mmtgE0CcFf9Jyn2q06_EIw
提取码:7p69
安装完成前两个以后,运行docker,提示
System.InvalidOperationException:
Failed to set version to docker-desktop: exit code: -1
步步都是坑,苍天啊
有的人说cmd执行netsh winsock reset 然后重启,但是我这边不行,所以接着寻找别的方法,后来找到一个。
接下来咱把Nolsp.exe下载下来,这个不需要安装~~,下载下来以后把这个文件放入C:\Windows 文件夹中,此时打开cmd 以管理员身份运行
然后执行一下命令
NoLsp.exe c:\windows\system32\wsl.exe
ok!重启docker,大功告成
接下来还有一点,那就是net core项目第一次以docker运行时,非常非常慢,那是因为docker拉取镜像的地址默认是国外的,我们可以改成国内的地址
- 桌面任务栏托盘区找到小海豚右键->Settings->Docker Engine
- 添加registry-mirrors 节点如下:
-
{ "registry-mirrors": [ "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn" ], "insecure-registries": [], "debug": true, "experimental": false }
分别是国内、网易、中科大的镜像
或者阿里云的镜像,不过阿里云镜像不是公开开放,需要自己阿里账户去申请一个,教程可以参考https://www.cnblogs.com/tianhengblogs/p/12520482.html
写的很详细我就不赘述了
修改完配置之后,点击这个按钮,我这里是改过了所以是灰色,然后重启docker
ok暂时这么多,希望对同学们有些帮助。
不足之处希望多多指正,欢迎评论区交流,
转载注明一下出处就ok