1. 启用WSL2
2. 安装Docker Desktop
1)从官网下载Docker Desktop for Windows
2)安装时务必勾选"Use WSL 2 instead of Hyper-V"
3)启动Docker Desktop后,进入 Settings → Resources → WSL Integration
4)确保Ubuntu-24.04发行版处于"Enabled"状态
5)配置镜像加速器
{
"features": {
"buildkit": true
},
"registry-mirrors": [
"https://docker.1panel.live",
"https://docker.1ms.run",
"https://docker.rainbond.cc"
]
}
3. 配置WSL网络DNS(重要)
WSL经常出现DNS解析问题,需要手动配置:
# 进入WSL Ubuntu终端
sudo nano /etc/wsl.conf
添加以下内容:
[network]
generateResolvConf = false
然后手动配置DNS(需要管理员身份):
sudo rm -f /etc/resolv.conf
sudo nano /etc/resolv.conf
填入:
nameserver 8.8.8.8
nameserver 114.114.114.114
说明:8.8.8.8 是 Google 的公共 DNS 服务器,114.114.114.114 是中国国内常用的公共 DNS。
最后在cmd中重启WSL:
wsl --shutdown
wsl
4. 启用WSL网络镜像模式(重要)
如果WSL版本较新(Windows 11 或 Windows 10 特定更新),可以使用镜像网络模式,让 WSL 完全共享 Windows 的网络,彻底解决DNS和路由问题。
以管理员的身份打开PowerShell,创建(或编辑).wslconfig 文件:
notepad "$env:USERPROFILE\.wslconfig"
填入:
[wsl2]
networkingMode=mirrored
dnsTunneling=true
firewall=false
最后在PowerShell中重启WSL:
wsl --shutdown
wsl
执行 nslookup docker.com验证网络是否正常:
5. 重要提醒
在执行Docker相关操作前,强烈建议先通过以下步骤检查DNS解析是否正常:
1)打开 WLS 终端/命令提示符
2)输入命令:nslookup docker.com
3)检查返回结果:
① 正常情况应显示docker.com的IP地址(如上图)
② 若显示"服务器不可用"或"请求超时",则说明DNS存在问题
DNS解析失败会导致以下问题:
1)无法拉取Docker镜像(如执行docker pull命令时出现网络错误)
2)无法访问Docker Hub仓库
3)容器内部网络连接异常
建议在安装Docker后立即进行此项检查,可以避免后续操作中因网络问题导致的各类故障。