安装WSL2、Docker全网最最详细教程之一

📅 2026/7/16 4:46:57 👁️ 阅读次数 📝 编程学习
安装WSL2、Docker全网最最详细教程之一

一、Windows允许虚拟服务的设置

这是最底层的准备工作,相当于为 WSL2 准备好“地基”。它需要启用两个关键的 Windows 可选功能:

  • 适用于 Linux 的 Windows子系统:提供 WSL 的基础 API 和管理接口。
  • 虚拟机平台:提供 Hyper-V 虚拟化能力,让 WSL2 能在轻量级虚拟机中运行真实内核。

这两个功能必须通过管理员权限的 PowerShell 命令或在控制面板“启用或关闭 Windows 功能”界面开启,并重启电脑后才能生效。没有它们,后续所有操作都无法进行。

二、安装WSL以及wsl内核

1、一键安装wsl框架和内核(需要魔法)

正常情况下输入以下命令运行,并等待其自动完成即可。

wsl -install

一般运行后会出现下图(注意一键安装的过程中需要魔法)

但是如果上述命令运行后,在下载wsl内核的时候出现网络受限或者说下载得到的内核版本太旧,就需要进行手动安装wsl内核。a哥也在下面详细介绍了手动下载内核的方式。

2、手动下载

2.1 下载WSL的内核

附内核下载地址 ,地址里选择.msi后缀的文件进行下载,根据网速需要十几分钟到半小时不等。

下载好WSL内核之后,双击运行,然后依次点击下一步,....完成。重新打开一个新的powershell,输入命令检查内核是否安装成功。注意更新或者新安装了wsl内核后一定要用命令

wsl --shutdown 重启wsl

使用命令 wsl --version查看内核和wsl服务是否正常

2.2 下载Linux发行版(这里以Ubuntu 22.04为例)

方法一、使用命令下载

方法二、手动下载发行版安装包,然后导入。对于分发版提供两个选择:

下载链接1 (.wsl 支持日常学习、轻度开发)因为它已经内置了轻度的工具

输入命令:wsl --import <分发版名称> <安装路径> <.wsl 文件路径> --version 2

其中 <分发版名称> 是你自己命名的。<安装路径>也是自定义的,不过要在执行这个命令前在文件系统创建这个目录。

下载链接2 (rootfs,支持服务器部署、容器化、高度定制化)因为里面就是纯净的wsl环境

输入命令:wsl --import <分发版名称> <安装路径> <rootfs.tar.gz 文件路径> --version 2

其中<分发版名称> 是自己命名的。<安装路径>也是自定义的,不过要在执行这个命令前在文件系统创建这个目录。

如图,输入命令出现下面的就是正常

导入成功见下图

同时一般导入成功之后,会出现这个弹窗。

三、安装好WSL2后

1、导入成功一定要做的步骤

1.1输入 wsl -d Ubuntu22 进入系统。

1.2在 Linux 终端里输入以下命令创建用户(把 yourname 换成你想要的用户名):

a.新建用户并加入用户组里:

b.确保用户名为小写之后,按提示输入两次密码:

c.退出 WSL (exit),回到 PowerShell,执行这条命令把它设为默认登录用户:

注意的是:用户名不符合 Linux 系统默认的用户名命名规则导致的。Linux 的 adduser 命令会根据 /etc/adduser.conf 中定义的 NAME_REGEX 正则表达式来校验用户名,而用户名包含大写字母,被系统判定为无效名称。

四、安装Docker desktop

1、下载 Docker下载官网

(1)选择那个amd64的Docker desktop(电脑是x86的)

有人问我们不是在windows电脑上安装了WSL2吗,不是应该安装Linux版本?
你可以把 Docker Desktop 想象成一个“大管家”,而 WSL2 是它手下的“苦力”。
Docker Desktop (Windows版):它负责在 Windows 界面上给你提供一个可视化的操作面板(Dashboard),让你能方便地管理镜像、容器,还能自动处理网络映射(比如把容器里的端口映射到 Windows 的 localhost)。
WSL2:它负责在后台干脏活累活。Docker Desktop 安装后,会自动在你的 WSL2 里配置好环境,让容器真正跑在 Linux 内核上。

2、双击运行Docker

注意运行后应该会出现弹窗,选择 use wsl instead of hyper-v.如果没有出现也没事,因为大部分默认是支持wsl.

3、启动之后

如果之前你的wsl框架以及内核华友分发版安装成功之后,你的Dockerdesktop启动后应该会出现下面的页面。可以看见右边,是对如何部署第一个容器有简单的说明。

4、使用Docker desktop管理

如果我们想在Windows上用 Docker Desktop 管理,同时能在 WSL 的终端里使用 docker 命令。就需要点击setting(右上角齿轮图案)--->resource--->wsl integration

截止到现在,如果读者看a哥文章到这里,那么恭喜你的WSL和Dockerdesktop已经配置好了。接下来就可以去部署一个项目到docker里了。
下面是一些常见的问题以及相关解答,如果有错误的地方,还希望读者能提出便于后学者不会产生错误理解。

问题:

1、首次启动 WSL 时会提示创建用户名和密码。这个用户名密码重要吗?
这个账号会被视为该 Linux 发行版的默认管理员账户。以后您在 WSL 中执行需要管理员权限的命令(例如安装软件、修改系统配置等)时,都需要使用 sudo 命令,此时系统就会要求您输入这个密码来进行身份验证。与 Windows 账户完全独立。如果您安装了多个不同的 Linux 发行版,它们各自都有独立的用户名和密码。如果您不小心忘记了这个密码,也不用担心,可以通过 Windows 的 PowerShell 强制重置。具体步骤如下:

  1. 以管理员身份打开 PowerShell。
  2. 输入命令 wsl -u root 进入 WSL 的 root(超级管理员)模式。

输入 passwd <您的用户名>,然后根据提示输入并确认新密码即可。

2、为什么使用rootfs而不使用ISO镜像?

特性ISO 镜像WSL rootfs.tar.gz
用途虚拟机/物理机安装WSL 专用轻量系统
包含内容引导程序、内核、图形界面、驱动仅根文件系统(/bin, /etc, /usr 等)
大小3–4 GB~300 MB
是否兼容 WSL❌ 不兼容✅ 原生支持

3、如何查看是否导入分发版以及如何注销分发版本?

4、分发版是以离线包形式导入指定盘符是否还需要迁移?

不需要迁移,常见有以下两种方式,(为了空间)第一种才需要迁移:

  1. 在线安装/默认安装:如果你是用 wsl --install 或者微软商店安装的,系统会默认把文件塞进 C 盘的用户目录下(C:\Users\...\AppData\...)。那种情况才需要“导出-注销-导入”来搬家。
  2. 导入分发版的离线包:最开始是直接用了 wsl --import ... D:\WSL\...,相当于出生就在 D 盘,一步到位。

5、如果说你先是导入了一个分发版,但是后来对这个不满意,是否可以删除?

当然可以,使用命令:wsl --unregister <你的分发版名字>

其中分发版名字是使用 wsl --status命令显示出来的。

总结

以上就是作者对WSL2安装的总过程以及安装Docker desktop的全部过程,以及Docker的简单知识,如果后面读者有需要的话作者也会继续更新。

如果这篇文章对你有帮助的话,希望各位观众姥爷能够一键三连!你的点赞关注是我持续创作的动力。