Win11安装WSL、Docker Desktop

纸上得来终觉浅,绝知此事要躬行

准备工作

  1. 系统要求

    • Windows 11 64位(家庭版/专业版/企业版)。

    • 需启用 WSL 2(Windows Subsystem for Linux 2)Hyper-V (专业版支持)。

    • 虚拟化已启用(需在 BIOS 中设置)。

  2. 检查虚拟化是否启用

    • Ctrl + Shift + Esc 打开任务管理器 → 切换到"性能"选项卡 → 查看"虚拟化"是否已启用。

    • 若未启用,需进入 BIOS 开启虚拟化技术(通常为 Intel VT-xAMD-V)。


安装步骤

1. 启用 WSL 2(推荐)
  • 以管理员身份打开 PowerShell 并运行:

    powershell 复制代码
    wsl --install
  • 重启电脑后,WSL 2 会自动安装默认的 Linux 发行版(如 Ubuntu)。

  • 手动设置 WSL 2 为默认版本:

    powershell 复制代码
    wsl --set-default-version 2
2. 下载 Docker Desktop
3. 安装 Docker Desktop
  • 双击下载的 .exe 文件运行安装向导。
  • 安装过程中勾选以下选项(如有):
    • Use WSL 2 instead of Hyper-V(推荐)。
    • Add shortcut to desktop(可选)。
  • 完成安装后点击 Close
4. 启动 Docker Desktop
  • 首次启动时会提示接受服务条款。
  • 等待 Docker 启动(状态栏图标显示绿色"Docker Desktop is running")。

验证安装

  1. 打开命令行(CMD/PowerShell)运行:

    bash 复制代码
    docker --version
    docker run hello-world
    • 如果看到欢迎消息,说明安装成功。
  2. 检查 WSL 集成:

    • 打开 Docker Desktop → SettingsResourcesWSL Integration
    • 确保已启用你的 Linux 发行版(如 Ubuntu)。

常见问题解决

  1. Docker 启动失败

    • 确保虚拟化和 WSL 2 已启用。

    • 尝试在 PowerShell 中重置 Docker:

      powershell 复制代码
      wsl --shutdown

      然后重启 Docker Desktop。

  2. WSL 2 安装问题

  3. 家庭版无法使用 Hyper-V

    • 需通过 WSL 2 运行 Docker,或升级到专业版。

注意事项

  • Docker Desktop 默认使用 Windows 容器 ,如需切换为 Linux 容器,右键任务栏 Docker 图标 → Switch to Linux containers
  • 建议分配足够资源给 Docker(在 Settings → Resources 中调整 CPU/内存)。

完成以上步骤后,即可在 Windows 11 上使用 Docker Desktop 运行容器

安装过程并不是特别顺利,遇到的问题如下:

1、wsl切换版本2后,执行 wsl --install一直会报错

bash 复制代码
PS C:\WINDOWS\system32> wsl --install
正在下载: Ubuntu
正在安装: Ubuntu
当前计算机配置不支持 WSL2。
请启用"虚拟机平台"可选组件,并确保在 BIOS 中启用虚拟化。
通过运行以下命令启用"虚拟机平台": wsl.exe --install --no-distribution
有关信息,请访问 https://aka.ms/enablevirtualization
错误代码: Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED

我排除了bios/Hyper-V/虚拟机平台等等问题,高低就是不行。我想到是不是其他虚拟化软件和wsl冲突了,查询资料之后发现可能是VMWARE影响了WSL的安装,笔者把VMWARE卸载重启之后,此问题终于得以解决。

2、拉docker镜像拉不下来,Docker Desktop默认的国外镜像地址请求特别慢,更换成国内的就可以了:

json 复制代码
{
  "builder": {
    "gc": {
      "defaultKeepStorage": "20GB",
      "enabled": true
    }
  },
  "experimental": false,
  "registry-mirrors": [
    "https://gikelf1h.mirror.aliyuncs.com",
    "https://hub-mirror.c.163.com",
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.m.daocloud.io",
    "https://hub.geekery.cn",
    "https://hub.littlediary.cn",
    "https://docker.rainbond.cc",
    "https://docker.unsee.tech",
    "https://hub.crdz.gq",
    "https://docker.nastool.de",
    "https://hub.firefly.store",
    "https://registry.dockermirror.com",
    "https://docker.1panelproxy.com",
    "https://hub.rat.dev",
    "https://docker.udayun.com",
    "https://docker.kejilion.pro",
    "https://dhub.kubesre.xyz",
    "https://docker.1panel.live",
    "https://dockerpull.org",
    "https://docker.hlmirror.com"
  ]
}
相关推荐
网络小白不怕黑1 天前
Docker容器网络:四大模式解析与自定义网络
运维·docker·容器
FeelTouch Labs1 天前
Nginx核心架构设计
运维·前端·nginx
程序员zgh1 天前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
gwd2001 天前
如何快速设置 Docker 代理设置
运维·人工智能·docker·容器
紫郢剑侠1 天前
飞秋@Windows +iptux@Linux,打造内网跨平台IM环境
linux·运维·服务器·im·qq
保持低旋律节奏1 天前
linux——调试
linux·运维·服务器
牛奶咖啡131 天前
Linux系统故障排查思路实践教程(下)
linux·运维·服务器·su命令切换用户问题解决·文件打开过多问题解决·linux网络故障问题解决·linux故障排查思路
一苓二肆1 天前
代码常用工具使用
git·vscode·docker·github·vim
Lynnxiaowen1 天前
今天我们继续学习kubernetes内容Helm
linux·学习·容器·kubernetes·云计算
weixin_521431121 天前
Docker容器技术
运维·docker·容器