Docker快速入门——Windowns系统下Docker安装(2025最新理解与完整,附带WSL1如何升级为WSL2)
前期准备
Windows 系统安装 Docker 时推荐先安装 WSL 2(Windows Subsystem for Linux 2),主要是因为 Docker 本质上是为 Linux 设计的容器技术,而 WSL 2 为 Windows 提供了一个轻量级、高性能的 Linux 内核环境,使 Docker 能在 Windows 上原生、高效地运行。
“注意:Windows 11 家庭版不支持 Hyper-V,WSL 2 是运行 Docker 的唯一可行方案。
Docker 的核心功能(如 容器隔离、cgroups、namespaces、OverlayFS 文件系统 等)都依赖于 Linux 内核。
而 Windows 内核(NT 内核)并不原生支持这些特性。
1.启动“Windows 子系统 Linux”
以管理员身份打开PowerShell(按下 Win + R 键,打开“运行”对话框。输入 powershell,然后按 Ctrl + Shift + Enter 键)并运行
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
2.启动'虚拟化"可选功能
以管理员身份打开PowerShell(按下 Win + R 键,打开“运行”对话框。输入 powershell,然后按 Ctrl + Shift + Enter 键)并运行:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重启系统,完成WSL安装并更新到WSL2。
" 此方法适用于所有 Windows 10(1903+)和 Windows 11 用户,包括家庭版。 "
查看WSL版本和发行版
wsl -l -v
当前状态是 “Stopped”(已停止)
- 这是正常状态!WSL 2 的 Linux 实例默认在没有活动进程时自动停止,以节省资源。
- 当你执行
wsl
或docker
命令时,它会自动启动。
安装成功后,打开任务管理器(win+x)即可看到虚拟化已启用:
一、安装Docker Desktop
官网下载地址:https://www.docker.com/products/docker-desktop/
1.根据自己电脑版本选择下载:
win+R输入cmd,再输入
wmic os get osarchitecture
输出结果会显示 64-bit
或 ARM64。
2.双击开始安装,进行配置
- Use WSL 2 instead of Hyper-V (recommended) : 启用虚拟化,以 WSL 2 替代 Hyper-V;
- Add shortcut to desktop : 安装成功后添加桌面快捷启动图标;
- 是否要为所有用户安装看自己的需求进行勾选
将两个选项都勾选上,然后点击【ok】,开始安装
选择Accept
找到小图标右键
点击Extensions——>Settings
在输入框中,添加如下镜像加速地址:
"registry-mirrors": ["https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com","https://docker.m.daocloud.io","https://hub-mirror.c.163.com","https://mirror.baidubce.com","https://your_preferred_mirror","https://dockerhub.icu","https://docker.registry.cyou","https://docker-cf.registry.cyou","https://dockercf.jsdelivr.fyi","https://docker.jsdelivr.fyi","https://dockertest.jsdelivr.fyi","https://mirror.aliyuncs.com","https://dockerproxy.com","https://mirror.baidubce.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.sjtug.sjtu.edu.cn","https://docker.mirrors.ustc.edu.cn","https://mirror.iscas.ac.cn","https://docker.rainbond.cc"]
添加时,需要符合 Json 格式,即 "experimental": false
末尾还需要添加一个逗号 ,
配置完成后,点击 Apply & restart 按钮
WSL1如何升级为WSL2
一. 确认系统满足要求
- Windows 10:版本 2004 或更高(Build 19041+)
- Windows 11:任意版本
已启用以下两个可选功能(若未启用,请先启用):
- Windows 子系统 Linux
- 虚拟机平台
以管理员身份运行 PowerShell,执行:
dism /online /get-features | findstr "Subsystem-Linux\|VirtualMachinePlatform"
确保两项状态为 Enabled
二、升级步骤(仅需一条命令)
步骤 1:设置 WSL 2 为默认版本(推荐)
wsl --set-default-version 2
此命令确保以后新安装的 Linux 发行版默认使用 WSL 2。
步骤 2:将现有发行版升级到 WSL 2
wsl --set-version <发行版名称> 2
例如,如果你的发行版叫 Ubuntu-20.04
:
wsl --set-version Ubuntu-20.04 2
升级过程需要 1–5 分钟(取决于发行版大小),你会看到进度提示。
三、验证是否升级成功
运行
wsl -l -v
正常输出 VERSION变为 2
NAME STATE VERSION
* Ubuntu-20.04 Stopped 2 ← VERSION 变为 2
你也可以进入 Linux 环境,检查内核版本:
wsl
uname -r
如果输出包含 microsoft-standard-WSL2
,说明已成功运行在 WSL 2 上:
5.10.16.3-microsoft-standard-WSL2
四、注意事项
1. 升级不会丢失数据
- 所有文件、用户账户、已安装的软件全部保留
- 升级过程是原地转换,安全可靠
2. 网络和 IP 地址变化
- WSL 2 使用虚拟化网络,每次启动会分配新的 IP 地址
- 如果你之前通过
localhost
访问服务(如 Web 服务器、数据库),仍然可用(Windows 会自动转发) - 但若需从 WSL 访问 Windows 服务,应使用
host.docker.internal
或$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')
3. 文件系统性能
- Linux 内部文件操作(如
/home
):WSL 2 性能远超 WSL 1 - 访问 Windows 文件(如
/mnt/c/
):WSL 2 略慢于 WSL 1
→ 建议:开发项目放在 Linux 文件系统中(如~/projects
)