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-x 或 AMD-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 → Settings → Resources → WSL 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"
  ]
}
相关推荐
迪菲赫尔曼20 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
by2099921 小时前
Linux GCC/G++ 编译与 Makefile 构建
linux·运维·服务器·经验分享
螺丝钉tina1 天前
[Playwright][08] Upload 模块自动化:如何设计真实业务测试用例?
运维·自动化·测试用例
迪菲赫尔曼1 天前
【基础篇 12】把环境与源码接起来:检查 GPU,再安装服务器上的项目
运维·服务器·开发语言·人工智能·python·yolo·目标检测
cq林志炫1 天前
两个Linux服务器之间同步文件
linux·运维·服务器
yyuuuzz1 天前
云服务器安全组规则优先级的机制记录
运维·服务器·网络·安全·阿里云·aws
KaiwuDB1 天前
KaiwuDB 运维实战06:数据库备份与恢复:从理论到实战
运维·数据库·时序数据库·kaiwudb
无人生还别怕1 天前
如何搭建k8s服务(containerd部署)
linux·云原生·容器·kubernetes·openanolisos
知已难寻1 天前
01 · OpenStack的认证管理 Keystone
运维·服务器·云原生·云计算·openstack
ai_xiaogui1 天前
私有化部署大模型实战:PanelAI 一键搭建、Token 计费与多用户隔离
运维·私有化部署·大模型部署·大模型 token 计费·api key 统一管理·多用户实例隔离·应用市场一键部署