适用于 Linux 的 Windows 子系统(WSL 2:Windows Subsytem Linux,版本2)可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。
安装Linux发行版
这里以window11系统为例,执行wsl --install命令会显示可用的Linux发行版,随后执行wsl --install -d <发行版名称>安装对应的发行版,示例安装的是Ubuntu发行版。
PS C:\Users\zx> wsl --install
适用于 Linux 的 Windows 子系统已安装。
以下是可安装的有效分发的列表。
请使用“wsl --install -d <分发>”安装。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
SLES-12 SUSE Linux Enterprise Server v12
SLES-15 SUSE Linux Enterprise Server v15
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
OracleLinux_8_5 Oracle Linux 8.5
OracleLinux_7_9 Oracle Linux 7.9
PS C:\Users\zhongxin> wsl --install -d Ubuntu
正在安装: Ubuntu
已安装 Ubuntu。
正在启动 Ubuntu…
PS C:\Users\zhongxin>
启动Ubuntu子系统
安装完成Ubuntu子系统后,将在开始菜单出现Ubuntu启动图标,找到并点击图标即可启动Ubuntu子系统。另外,也可以直接打开终端输入ubuntu命令也可以进入

下载并安装Docker Desktop for Windows
Docker Desktop for Windows 为生成、交付和运行 Docker 化的应用提供了一个开发环境。通过启用基于 WSL 2 的引擎,可以在同一计算机上的 Docker Desktop 中运行 Linux 和 Windows 容器。(Docker Desktop 免费供个人和小型企业使用,有关专业、团队或企业定价的信息,请参阅 Docker 站点常见问题解答)。
访问https://www.docker.com/下载Docker Desktop for Windows并按照安装说明进行安装。

配置WSL 2引擎
打开已安装的Docker Desktop进入设置菜单
General选项勾选“Use the WSL 2 based engine”
Resources > WSL integration中勾选安装的Linux发行版Ubuntu,应用并重启


查看Docker版本信息
设置完成后,在Ubuntu系统中执行docker version可以成功查看到docker版本信息
zx@LAPTOP-H74SUNSN:~$ docker version
Client: Docker Engine - Community
Cloud integration: v1.0.29
Version: 20.10.22
API version: 1.41
Go version: go1.18.9
Git commit: 3a2c30b
Built: Thu Dec 15 22:28:22 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Desktop
Engine:
Version: 20.10.22
API version: 1.41 (minimum version 1.12)
Go version: go1.18.9
Git commit: 42c8b31
Built: Thu Dec 15 22:26:14 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.14
GitCommit: 9ba4b250366a5ddde94bb7c9d1def331423aa323
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
zx@LAPTOP-H74SUNSN:~$
参考文献
WSL 上的 Docker 容器入门 | Microsoft Learn




