Docker安装
资源下载
链接: https://pan.baidu.com/s/1B6JbwZD5jM86vy8sryOusQ
提取码: 4p5t 资源包含 Docker的exe文件以及wsl2的更新包
打开电脑的 Hyper-v
该固件中的虚拟化支持被禁用
这个地方可能 Hyper—V会无法勾选,提示虚拟化支持被禁用
- 首先重启进入BIOS界面
- 进入CPU Configuration设置界面,在底部可以看到Intel Virtualization Technology设置项。
- 把它设置为Enabled,这样就开启了CPU的虚拟化支持功能。最后保存退出BIOS设置。
- 再次进入,就可以使用了。
设置好之后再安装Docker
WSL 2 installation is incomplete.
安装后启动报错WSL 2 installation is incomplete.
可能是我们使用的wsl2版本老了,需要我们自己手动更新一下。
switch to windows containers
安装docker成功后,右下角右键docker图标,点击switch to windows containers
,这的意思就是转换为windows下的容器,这里分两种,一种是windows一种是linux。
出现异常
点击switch to windows containers
后出现错误
基于WSL2 的 Docker Desktop 启动时 Failed to set version to docker-desktop: exit code: -1的解决方法
还伴随着一堆日志
stderr:
在 Docker.ApiServices.WSL2.WslShortLivedCommandResult.LogAndThrowIfUnexpectedExitCode(String prefix, ILogger log, Int32 expectedExitCode) 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.ApiServices\WSL2\WslCommand.cs:行号 146
在 Docker.Engines.WSL2.WSL2Provisioning.<ProvisionAsync>d__8.MoveNext() 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\WSL2Provisioning.cs:行号 82
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Docker.Engines.WSL2.LinuxWSL2Engine.<DoStartAsync>d__25.MoveNext() 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.Desktop\Engines\WSL2\LinuxWSL2Engine.cs:行号 99
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Docker.ApiServices.StateMachines.TaskExtensions.<WrapAsyncInCancellationException>d__0.MoveNext() 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\TaskExtensions.cs:行号 29
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
在 Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:行号 67
--- 引发异常的上一位置中堆栈跟踪的末尾 ---
在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
在 Docker.ApiServices.StateMachines.StartTransition.<DoRunAsync>d__5.MoveNext() 位置 C:\workspaces\PR-15077\src\github.com\docker\pinata\win\src\Docker.ApiServices\StateMachines\StartTransition.cs:行号 92
解决办法:
- 管理员方式执行cmd命令
- netsh winsock reset
然后重新启动docker再次点击switch to windows containers
,就可以了
以上错误都是本人安装时出现的异常,可能是因为电脑环境问题,所以并不是所有人都会有一样的情况,可能不会报错,也可能会出现其他异常。我这里只是把我自己遇见的异常以及解决办法做了个归纳总结
配置修改
- registry-mirrors修改为镜像加速地址,我这里用的是阿里云的镜像仓库,里面有加速地址,复制过去就行
- experimental一定要修改为true,不然当你打包的时候回初问题。
加速地址获取:https://github.com/yeasy/docker_practice/blob/master/install/mirror.md
然后打开命令控制台,输入docker -v 查看docker版本,到此docker 已经安装成功了