作者: 安装软件大师
适用系统: Windows 11 / Windows 10 22H2+
安装路径:
D:\tools\docker
一、前言
Docker 是开发必备工具,但 Windows 上安装 Docker Desktop 可能会遇到一些挑战------网络连接问题、WSL 迁移、UAC 权限等。本文还原了我在一台全新 Windows 11 电脑上从零安装好 Docker 的完整过程,每一步都有命令和截图说明,照着操作即可。
二、安装前环境检查
打开 PowerShell(Win + S 搜索"PowerShell"),逐条运行:
powershell
# 1. 检查 Windows 版本(需要 ≥ 19045)
(Get-CimInstance Win32_OperatingSystem).Version
# 2. 检查系统架构(需要 x64)
$env:PROCESSOR_ARCHITECTURE
# 3. 检查 CPU 虚拟化是否已开启(True=已开,False=需进BIOS)
(Get-WmiObject -Class Win32_Processor).VirtualizationFirmwareEnabled
# 4. 检查 Docker 是否已安装
docker --version
📌 截图参考: 运行
(Get-WmiObject Win32_Processor).VirtualizationFirmwareEnabled后,返回True才符合条件,无需重启进 BIOS。
检查结果参考:
| 项目 | 要求 | 状态 |
|---|---|---|
| Windows 版本 | ≥ 19045 | ✅ |
| 系统架构 | x64 | ✅ |
| CPU 虚拟化 | True | ✅ |
| Docker 已安装 | --- | ❌ 未安装 |
如果上面的检查都通过了,继续往下。
三、开启 Windows 虚拟化功能
必须以管理员身份运行 PowerShell!
按 Win + X → 终端(管理员) → 在弹出的 UAC 窗口点"是"。
然后依次执行:
powershell
# 第一步:启用 WSL 子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 第二步:启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 第三步:启用 Hyper-V
dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V /all /norestart
📌 截图参考: 每条命令执行后会出现蓝色的进度条,完成后显示"启用操作已成功完成"。
重启电脑:
powershell
Restart-Computer
✅ 这一步结束,你的电脑已经具备了运行 Docker 的基础条件。
四、安装 WSL2 + Ubuntu
重启后打开普通 PowerShell(不需要管理员了)。
4.1 设置 WSL2 为默认版本
powershell
wsl --set-default-version 2
4.2 安装 Ubuntu
powershell
wsl --install -d Ubuntu
等待下载完成(1-5 分钟,取决于网速)。
📌 关键截图: Ubuntu 终端会自动弹出,要求你设置用户名和密码------
Enter new UNIX username: unix_sk New password: [输入密码,不会显示字符] Retype new password: [再输一次]用户名建议用英文小写 ,密码记住。
4.3 验证
powershell
wsl -l -v
应显示:
NAME STATE VERSION
* Ubuntu Stopped 2
五、把 WSL2 迁移到 D 盘(推荐,避免占满 C 盘)
Docker 默认把 WSL 放在 C 盘,如果你的 C 盘空间紧张,可以迁到 D 盘。
powershell
# 1. 关闭 WSL
wsl --shutdown
# 2. 创建 D 盘目录
New-Item -ItemType Directory -Path D:\tools\docker\wsl\Ubuntu -Force
# 3. 导出 Ubuntu(约 1.2GB,等 1-2 分钟)
wsl --export Ubuntu D:\tools\docker\wsl\Ubuntu\ubuntu.tar
# 4. 注销 C 盘的 Ubuntu
wsl --unregister Ubuntu
# 5. 导入到 D 盘
wsl --import Ubuntu D:\tools\docker\wsl\Ubuntu D:\tools\docker\wsl\Ubuntu\ubuntu.tar --version 2
# 6. 恢复登录用户(导入后默认是 root)
$reg = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss"
foreach ($d in Get-ChildItem $reg) {
if ((Get-ItemProperty $d.PSPath).DistributionName -eq "Ubuntu") {
Set-ItemProperty $d.PSPath -Name DefaultUid -Value 1000
}
}
⚠️ 注意: 第4步
wsl --unregister会删除 C 盘的 Ubuntu,确保第3步导出成功后再执行。
六、下载 Docker Desktop
6.1 准备工作
- 安装包大小:约 629MB
- 如果你在国内,直接下载会被墙,需要科学上
6.2 使用网络加速下载
由于网络环境差异,直接下载 Docker Desktop 安装包可能较慢。以下提供两种下载方式:
方式一:使用 curl 命令下载(推荐)
powershell
# 下载到 D:\tools\docker
curl.exe -L -o D:\tools\docker\DockerDesktopInstaller.exe `
"https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe" `
--connect-timeout 30 --max-time 3600
方式二:使用浏览器直接下载
如果命令行下载失败,也可以直接在浏览器中访问以下链接下载:
下载完成后将文件保存到 D:\tools\docker\ 目录下。
📌 下载提示: 使用 curl 命令下载时会显示实时进度:
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 629M 100 629M 0 0 2.37M 0 0:04:24 0:04:24 2.37M正常速度 2-4 MB/s,几分钟完成。如果速度持续低于 100KB/s,可以尝试:
- 检查网络连接是否稳定
- 更换网络环境(如切换到手机热点)
- 使用方式二的浏览器直接下载
试。
6.3 验证文件完整性
powershell
Get-FileHash D:\tools\docker\DockerDesktopInstaller.exe
七、安装 Docker Desktop
7.1 创建安装脚本
新建 D:\tools\docker\install_docker.bat,写入以下内容:
batch
@echo off
echo ============================================
echo Docker Desktop 一键安装
echo ============================================
echo.
echo 安装路径: D:\tools\docker\Docker Desktop
echo.
echo 如果弹出 UAC 窗口,请点击"是"
echo.
start /wait "" "D:\tools\docker\DockerDesktopInstaller.exe" ^
install --quiet --accept-license ^
--installation-dir="D:\tools\docker\Docker Desktop"
echo.
echo 安装完成 (返回码: %errorlevel%)
pause
7.2 运行安装
双击 install_docker.bat。
📌 关键截图: 会弹出 UAC 窗口------"你要允许此应用对你的设备进行更改吗?",点"是"。安装过程约 3-5 分钟,不需要其他操作。
7.3 重启电脑
安装完成后重启电脑。重启后 Docker Desktop 会自动启动,右下角任务栏会出现 🐳 图标。
八、验证安装
打开 新的 PowerShell 窗口(旧窗口需要关掉重开),依次输入:
powershell
docker --version
输出示例: Docker version 28.0.4, build ...
powershell
docker compose version
输出示例: Docker Compose version v2.35.0 ...
powershell
docker info
输出示例: 一大段 Docker 配置信息,能看到 Server Version: 28.0.4
powershell
docker run hello-world
输出示例:
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
四个命令全部成功 → 恭喜,Docker 装好了! 🎉
九、常见问题排查
Q1:下载速度慢或连接失败
- 检查网络连接是否正常
- 尝试使用稳定的网络环境
- 确保防火墙或安全软件没有阻止下载
Q2:下载速度太慢(<100KB/s)
- 当前网络到 Docker 服务器速度较慢,可以尝试:
- 更换网络环境(如切换到手机热点)
- 在网络状况较好的时段重试
- 使用浏览器直接下载(方式二)
Q3:WSL 导出失败
powershell
# 先启动一次 Ubuntu
wsl -d Ubuntu -u root -- ls /
wsl --shutdown
# 再导出
wsl --export Ubuntu D:\tools\docker\wsl\Ubuntu\ubuntu.tar
Q4:WSL 迁移后变成 root 登录
- 按第5节第6步设置 DefaultUid=1000
Q5:安装后 docker 命令找不到
- 关掉当前 PowerShell,重新打开一个
Q6:UAC 弹窗没点,安装失败
- 回到第7节,重新双击
install_docker.bat,这次记得点"是"
十、最终效果
安装完成后的目录结构:
D:\tools\docker\
├── Docker Desktop\ ← 安装的程序(≈600MB)
├── wsl\Ubuntu\
│ ├── ext4.vhdx ← Ubuntu 系统文件(1.4GB)
│ └── ubuntu.tar ← 备份(可删除)
├── DockerDesktopInstaller.exe ← 安装包(可删除)
└── install_docker.bat ← 安装脚本(可删除)
Docker 验证结果:
powershell
docker --version → Docker version 28.0.4
docker compose version → Docker Compose version v2.35.0
docker run hello-world → Hello from Docker! ✅
十一、参考链接
如果这篇文章对你有帮助,欢迎点赞、收藏、评论三连!
有任何安装问题,评论区留言,我看到就回复。

