截至到2021年11月,docker desktop需要wsl2的支持

先检查运行 WSL 2 的要求, 查看Windows 版本及内部版本号,选择 Windows 徽标键 + R,然后键入“winver”,选择“确定”。

如果运行的是 Windows 10 版本1903 或 1909,请在 Windows 菜单中打开“设置”,导航到“更新和安全性”,然后选择“检查更新”。 内部版本号必须是 18362.1049+ 或 18363.1049+,次要内部版本号需要高于 .1049。 阅读详细信息:WSL 2 即将支持 Windows 10 版本 1903 和 1909。

启用适用于 Linux 的 Windows 子系统

需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。

1
2
3
以管理员身份打开 PowerShell 并运行:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

启用虚拟机功能,以管理员身份打开 PowerShell 并运行:

1
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

下载 Linux 内核更新包

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

将 WSL 2 设置为默认版本

1
wsl --set-default-version 2

下载linux发行版

https://aka.ms/wslubuntu2004

arm: https://aka.ms/wslubuntu2004arm

下载了发行版后,导航到包含下载内容的文件夹,并在该目录中运行以下命令,其中 app-name 是 Linux 发行版 .appx 文件的名称。

1
Add-AppxPackage .\app_name.appx

设置 Linux 用户信息

1
2
3
4
5
6
7
8
9
使用 WSL 安装 Linux 分发版的过程完成后,默认情况下, (Ubuntu) Ubuntu "开始"菜单。 系统要求 你为 Linux 分发 版创建 用户名和密码。

此 用户名 和 密码 特定于安装的每个单独的 Linux 分发版,与 Windows 用户名无关。

创建 用户名 和 密码 后,该帐户将是分发版的默认用户,并将在启动时自动登录。

此帐户将被视为 Linux 管理员,能够运行 sudo (Super User Do) 管理命令。

WSL 上运行的每个 Linux 分发版都有自己的 Linux 用户帐户和密码。 每当添加分发版、重新安装或重置时,都必须配置一个 Linux 用户帐户。

若要更改或重置密码,请打开 Linux 分发版并输入命令 passwd 。 系统会要求你输入当前密码,然后要求输入新密码,之后再确认新密码。

如果忘记了 Linux 分发版的密码:

请打开 PowerShell,并使用以下命令进入默认 WSL 分发版的根目录:wsl -u root

如果需要在非默认分发版中更新忘记的密码,请使用命令:wsl -d Debian -u root,并将 Debian 替换为目标分发版的名称。

在 PowerShell 中的根级别打开 WSL 分发后,可以使用此命令更新密码:其中 是分发中你忘记了其密码的帐户的用户名。
passwd

系统将提示你输入新的 UNIX 密码,然后确认该密码。 当系统告知密码已成功更新后,使用 命令在 PowerShell 中关闭 WSL: exit

win10使用WSL 2运行Docker Desktop,运行文件从C盘迁移到其他目录(powershell打开)

首先关闭docker

关闭所有发行版:

  • wsl --shutdown

将docker-desktop-data导出到D:\DSoftwareData\wsl\docker-desktop-data.tar(注意,原有的docker images不会一起导出,还有就是先建立D:\DSoftwareData\wsl文件夹)

  • wsl --export docker-desktop-data D:\DSoftwareData\wsl\docker-desktop-data.tar

注销docker-desktop-data

  • wsl --unregister docker-desktop-data

重新导入docker-desktop-data到要存放的文件夹:D:\SoftwareData\wsl\

  • wsl --import docker-desktop-data D:\DSoftwareData\wsl\ D:\DSoftwareData\wsl\docker-desktop-data.tar --version 2

只需要迁移docker-desktop-data一个发行版就行,另外一个不用管,它占用空间很小