2025年 WSL 2 安装 Docker 详细记录
目录
最近在 Windows 上使用 Docker,发现 Docker Desktop 开启或者关闭实在是等太久了,而且桌面端大部分情况下不会去用,决定试试 WSL 2 安装 Debian + Docker, 最新的安装步骤也简化很多,启动和关闭比桌面端舒适,于是整理一下安装记录。
本文的更新的时间为 2025-02-15, 如果距离时间太久,有些操作可能有出入。
启用主板的虚拟化,在资源管理器里 CPU 项可以看到。
当前条件:系统 Windows 11 23H2,Windows 10 也行,这里以 Windows 11 操作记录为主。
开启 WSL #
Windows 徽标 + R 运行 optionalfeatures
打开“启用或关闭 Windows 功能”;
打开后勾选“适用于 Linux 的 Windows 子系统”和“虚拟机平台”,然后点击“确定”后会有提示重启
重启后, 右键 Windows 徽标,选择点击终端管理员
(或 Windows 10 可以管理员身份打开 PowerShell, 在“开始”菜单中搜索“PowerShell”,右键选择“以管理员身份运行”),
输入以下命令以安装 WSL:
wsl --install
当前时间节点上,该命令将启用所需的组件,安装最新的 WSL 2, WSL 2 也将设置为默认版本。
安装 Debian 发行版 #
查看 Debian 完整名 #
在终端里输入
wsl --list --online
Debian 的完整名称目前是 Debian
, 输入以下命令直接安装并进入
wsl --install -d Debian
此时,会设置一个 UNIX 用户名和密码,用于后续 sudo
启动Debian #
输入 wsl
可以进入,但建议使用 -d
进行指定
wsl -d Debian
使用 wsl --list --verbose
可以查看当前安装的所有发行版,星号(*
)表示 当前默认的 WSL 发行版,可以看到下图的默认发行版为 podman 的,如果此时直接运行 wsl
命令,而不指定特定的发行版,会默认启动带 *
的。
更新软件 #
输入以下命令更新下软件包列表,并更新升级所有已有的软件
sudo apt update && sudo apt upgrade -y
也可以只更新列表,不对软件进行升级
sudo apt update
安装 Docker #
为避免接下来的操作每次输入 sudo
, 直接输入
sudo -i
使用 root 身份进行接下来的操作
安装 curl #
apt install -y curl
最后安装 Docker #
curl -sSL https://get.docker.com | sudo sh
这是 Docker 官方推荐的快速安装命令,无需手动配置,一步到位。
安装 Portainer #
安装 web 管理 Docker, 这里使用的是 Portainer
docker run -d -p 9000:9000 -p 8000:8000 --name u_portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.27.0-rc3-alpine
这样就可以对 Docker 可视化操作了
配置 Windows #
运行网络访问 #
在开始的程序菜单里 打开 WSL Settings
点选左侧栏的 网络
选项
网络模式
设置为 Mirrored
开启 主机地址环回
这样就能访问 localhost:9000
来进入 Portainer 了
解决阻止退出终端,wsl 自动关停 #
用了一段时间,只要终端关闭一段时间,就会自动关闭子系统,查了下 WSL 2 策略就是这样,为避免这个情况:
Windows 徽标 + R 运行 shell:startup
打开开机启动目录
创建一个文本文件重命名为
wsl.vbs
在 wsl.vbs 中,粘贴以下,并保存关闭
set ws=wscript.CreateObject("wscript.shell")
ws.run "wsl -d Debian", 0
这样将会在登录系统后,Windows 会开启 WSL, 会持续等待输入,不会关闭。关闭计算机时正常关机即可,也不会像 Docker Desktop 等上半天,开机直接使用浏览器 localhost:9000
来进入 Portainer
其他 #
默认 Windows 上总内存的 50%,相同线程,具体可以在资源管理器打开用户文件夹,或者地址栏 %USERPROFILE%
访问,建立 .wslconfig
进行控制
# Settings apply across all Linux distros running on WSL 2
[wsl2]
# 内存限制,可以使用 GB 或 MB 单位
memory=4GB
# 线程数
processors=2
# swap
swap=8GB
参考 #
https://learn.microsoft.com/zh-cn/windows/wsl/wsl-config#main-wsl-settings