如何在Win11 WSL2环境下配置Docker Desktop和Minikube?

摘要:1. 准备工作操作系统:Win11,建议保持系统更新 WSL版本:强烈建议使用 WSL2(性能和兼容性更好) 推荐用 Ubuntu 20.0422.04 作为 WSL 子系统检查安装 WSL2在 PowerShell(管理员)运行:ws
1. 准备工作操作系统:Win11,建议保持系统更新 WSL版本:强烈建议使用 WSL2(性能和兼容性更好) 推荐用 Ubuntu 20.04/22.04 作为 WSL 子系统检查/安装 WSL2在 PowerShell(管理员)运行: wsl --install wsl --set-default-version 2 如已安装可用 wsl -l -v 查看当前系统及版本。 如需升级已存在子系统至 WSL2: wsl --set-version <Your-Distro-Name> 2 2. 安装 Docker Desktop下载 Docker Desktop for Windows 官方安装包安装过程中确保勾选“为 WSL2 安装 Docker” 选项 安装好后启动 Docker Desktop,务必在设置→资源→WSL integration,确保你用的 WSL 发行版已启用 Docker 集成(一般都自动勾选)验证:在 WSL/Ubuntu 里直接执行 docker info 能看到 Docker 信息,表示已连通 在 WSL Ubuntu 中遇到域名解析失败(例如执行 sudo apt update 时出现 Temporary failure resolving 错误)是一个常见问题。其核心原因是 WSL 会自动生成并覆盖 /etc/resolv.conf 这个 DNS 配置文件,导致您自定义的 DNS 设置失效。 首先,您需要编辑或创建 /etc/wsl.conf 文件,告诉 WSL 不要自动管理 DNS。 sudo nano /etc/wsl.conf 在文件中添加以下配置 [network] generateResolvConf = false 保存并退出编辑器。 手动配置 DNS 服务器 接下来,删除旧的 DNS 配置文件,并创建一个新的、静态的配置文件。 bash # 删除可能存在的旧文件(包括符号链接) sudo rm -f /etc/resolv.conf 然后,创建新的 resolv.conf 文件并写入 DNS 服务器地址 sudo nano /etc/resolv.conf 在文件中输入您选择的 DNS 服务器。最推荐使用您 Windows 主机中 WSL 虚拟网卡的 IP 作为 DNS 网关,这通常能获得最稳定的解析。您可以在 Windows PowerShell 中运行 ipconfig,找到名为 vEthernet (WSL) 的适配器,其 IPv4 地址 就是您需要的网关(例如 172.28.160.1)。 nameserver 172.28.160.1 # 请替换为您自己查到的 WSL 网关 IP 或者,您也可以使用公共 DNS,例如: nameserver 114.114.114.114 # 国内常用 DNS nameserver 8.8.8.8 # Google 公共 DNS 保存并退出。 重启 WSL 使配置生效 配置完成后,您必须完全重启 WSL 才能使更改生效 在 WSL Ubuntu 终端中,输入 exit 退出。在 Windows PowerShell 或 CMD(以管理员身份运行)中,执行关闭命令: powershell wsl –shutdown等待几秒后,重新启动您的 WSL Ubuntu 发行版。 验证 DNS 解析 重新进入 WSL Ubuntu 后,首先检查配置是否已应用: bash cat /etc/resolv.conf 确认输出的 nameserver 是您设置的地址。然后,测试网络连通性: bash ping www.baidu.com 如果能够收到回复,说明域名解析已恢复正常。
阅读全文