我试了8次才搞明白的Windows装Docker攻略,别踩我踩过的坑
说真的,我第一次在Windows上装Docker的时候,差点把电脑给砸了。网上那些教程吧,写得跟说明书似的,什么“请确保系统满足要求”、“请按照步骤操作”——废话,我当然知道要满足要求,问题是它就是不满足啊!
我折腾了整整一个周末,重装了三次系统,最后才发现问题出在一个我压根没注意过的系统设置上。今天我就把我这血泪史总结成一份人话版攻略,保证你半小时内搞定,不用像我一样走弯路。
先泼盆冷水:你的电脑可能根本装不了
别急着下载安装包,这是最重要的一步。我当年就是太兴奋,直接开干,结果卡在第一步整整两天。
Docker在Windows上跑,其实不是在Windows里跑——它需要先虚拟一个Linux环境。这就对你的电脑提了几个硬性要求:
- 必须是64位系统。 这年头应该没人用32位了吧?不过还是确认一下:右键“此电脑”-“属性”,看看系统类型。
- 必须是专业版、企业版或教育版的Windows 10/11。 家庭版的朋友,这里就是第一个大坑。我有个朋友用的就是家庭版,他当时就卡住了,因为家庭版默认没有Hyper-V(Windows自带的虚拟机功能)。解决办法有两个:要么升级系统版本(花钱),要么用Docker Desktop for Windows的替代方案,比如用WSL2(这个我们后面细说)。
- BIOS里得开启虚拟化。 这是最玄学的一步。很多教程就轻飘飘一句“请确保开启虚拟化”,怎么开?它不说。其实很简单:重启电脑,在开机Logo出现时狂按
F2、F10或Delete键(不同品牌电脑按键不同,自己搜一下),进入BIOS设置。然后找到类似“Virtualization Technology”或“Intel VT-x”的选项,把它从Disabled改成Enabled。保存退出。
(我当时就卡在这,因为我的联想小新BIOS里这个选项藏得特别深,在“Configuration”->“Intel Virtual Technology”里,鬼才找得到。)
真·开始安装:两条路,我推荐第二条
满足条件后,你有两条路可以选:传统Hyper-V路线和WSL2路线。网上大部分老教程都走第一条,但我以过来人的经验告诉你,直接走WSL2路线,更香,问题更少。
路线一:传统Hyper-V路线(可以了解,但不推荐)
就是完全依赖Windows的虚拟机。安装后你的电脑会多一个虚拟网卡,有时候会和你公司的VPN或者一些网络代理软件打架,导致你上不了网。别问我怎么知道的。
路线二:WSL2路线(强烈推荐,微软官方现在也主推这个)
WSL(Windows Subsystem for Linux)可以理解为“Windows里的Linux子系统”,比完整虚拟机轻量得多,性能更好,和Windows文件系统互通也更方便。
第一步:先装WSL2
- 以管理员身份打开PowerShell(在开始菜单里搜PowerShell,右键选“以管理员身份运行”)。
- 输入下面这行命令,回车:
wsl --install这个命令会自动安装WSL2内核,并默认给你装一个Ubuntu发行版。等它跑完,重启电脑。
(这里有个小插曲,我第一次跑的时候报错了,提示“WSL2需要更新内核组件”。别慌,它一般会给你一个下载链接,点开下载一个大概50M的安装包,安装后再重启就行。)
- 重启后,桌面上会多一个“Ubuntu”图标,点开它,它会像安装软件一样完成Linux子系统的最后设置,让你创建用户名和密码。这个密码就是你以后在WSL里用
sudo命令时的密码,记好。
第二步:再装Docker Desktop
-
去Docker官网下载 Docker Desktop for Windows 安装包。认准
docker.com,别下到乱七八糟的第三方网站去了。 -
双击安装,安装过程中,最关键的一步来了:在配置页面,一定要勾选“Use WSL 2 instead of Hyper-V”(如下图)。这样Docker就会和刚才装好的WSL2集成,而不是用Hyper-V。
(示意图,安装时看到类似选项就打勾) -
一路下一步,安装完成,再次重启电脑。
装好了?别急,先跑个“Hello World”验验货
重启后,桌面上会有个Docker的蓝色小鲸鱼图标,打开它。等它在系统托盘里运行起来(图标不闪动了)。
然后,还是用管理员身份打开PowerShell,输入:
docker run hello-world
如果看到一串英文,最后写着“Hello from Docker!”,恭喜你,安装成功了!这个小鲸鱼已经能在你的Windows上欢快地游泳了。
如果报错了,大概率是Docker Desktop没启动成功。去系统托盘右键小鲸鱼图标,看看有没有“Start”选项。
我遇到的那些奇葩问题(保命合集)
- 问题: 安装时提示“WSL2 installation is incomplete.”
- 解决: 手动更新一下WSL2内核。去微软官网搜“WSL2 Linux kernel update package for x64 MAChines”,下载安装。
- 问题: Docker Desktop一直卡在“Starting...”界面。
- 解决: 大概率是防火墙或杀毒软件拦了。暂时关掉它们试试。如果是公司电脑,可能需要找IT部门开权限。还有一种玄学情况:把Windows系统区域设置里的“Beta版:使用Unicode UTF-8提供全球语言支持”这个勾去掉,然后重启。
- 问题:
docker命令在PowerShell里不能用,提示“不是内部或外部命令”。- 解决: Docker Desktop安装时应该会自动添加环境变量。如果没有,手动加一下:把
C:\Program Files\Docker\Docker\resources\bin添加到系统的Path环境变量里,然后重启终端。
- 解决: Docker Desktop安装时应该会自动添加环境变量。如果没有,手动加一下:把
说白了,在Windows上装Docker,就像给一个习惯喝咖啡的人泡一杯功夫茶——环境差异大,步骤繁琐点。但一旦配好了,用起来是真方便。以后再也不用为了开发环境不一致跟同事扯皮了。
行了,攻略就到这。如果还有问题,别硬扛,去Docker的官方文档或者GitHub的Issues里搜搜,你踩的坑,全世界程序员大概率都踩过。祝你好运,一次成功!

还没有评论,来说两句吧...