docker wsl2启动不了_在window上安装docker的方法

前一阵子公司要在线上部署docker,做完之后我就想在我的win10上面也装一个,在这个过程中遇到了一些问题,这里是对这些问题的一个笔记。

第一步:安装WSL2

docker需要通过WSL2才能运行,就目前而言,我们需要首先安装WSL,然后通过升级包把他更新成WSL2。

那么怎么装WSL呢?

e08c964541e5a351dcfdbb82eec2a58a.png
找到控制面板

29cd7566e5ed66debaf7caa13263d3c4.png
找到程序

83e0afb3910eae5c7383de73424ac2bd.png
选择启动和关闭windows功能

efd5769a90b13e28c5dba9e815a3e576.png
勾选适用于Linux的Windows子系统

按照上图顺序,依次打开控制面板,找到程序,打开启动或关闭windows功能,勾选适用于Linux的windows子系统,这就是WSL(Windows Subsystem Linux)了。

点击确定,他就会开始安装,注意现在不要重启。

接下来,就需要下载WSL2的安装包,这个安装包在这里可以找到:

更新 WSL 2 Linux 内核​docs.microsoft.com
f8c99e5104de165610d204b8585c2b12.png

安装之后,就有WSL2了,注意,现在还是不要重启。

完成之后,我们在cmd中执行一条命令,要用管理员身份执行:

netsh winsock reset

这里是为了防止出现这个错误(也就是WSL2启动失败的问题)[1]

System.InvalidOperationException: Failed to set version to docker-desktop: 

特别注意:如果你在安装Docker后使用了proxifier 代理工具,出现上述问题,那么请重新执行此命令。

下载Docker

这个当然是去官网,由于是windows,所以应该使用dockerDesktop。docker下载会相当慢。

Get Started with Docker | Docker​www.docker.com
b8f65ed31ddd66947854548ba6a56f8b.png

db211f42bde240b65cb4b01ff54d9716.png

我们可以找到这个,下载就行了,下载完装上。

Hyper-v

如果你不是windows10 专业版,那么就无法在windows功能里面找到Hyper-v。如果你是专业版,就按照开启WSL的方法开启Hyper-v,参考本文第一部分,在对话框中找到hyper-v然后勾选,点击确定安装。

如果你是其他windows10版本,请这样做[2]

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

复制以上文本,使用记事本存储为hyper-v.bat,放在桌面上,右键使用管理员身份运行。这个时候就会自动下载和激活Hyper-v功能。

结束安装

上述所有步骤完成,重启计算机,注意不要关机然后启动,直接重启。

重启结束之后,docker就应该能够正常运行了。

bb0bb24b559c81b8f9e80dbebaecac3d.png

我们可以在任务栏里面看到这个,在命令行输入docker命令,可以看到相关的帮助信息,这就说明docker已经成功安装。

参考

  1. ^WSL2启动失败导致的错误,详情参考这个 https://blog.csdn.net/mysticboy/article/details/106632922
  2. ^解决方式参照这里 https://www.jb51.net/article/182013.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值