1. Posts/

2025年 WSL 2 安装 Docker 详细记录

·阅读预计 2 分钟
WSL2 Docker Debian 安装 记录 教程 教学 Windows
小北
作者
小北
目录

最近在 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

Related

本地部署并运行 AI 大语言模型详解
·阅读预计 2 分钟
Ollama AI Qwen DeepseekR1 Web 安装 记录 教程 教学 阿里云 Windows Mac Monterey
Windows Thin PC 安装 使用体验
·阅读预计 1 分钟
Windows 安装
解决 Node 下 Puppeteer 在 Docker 容器内无法正常启动的问题
·阅读预计 2 分钟
Puppeteer Node Nodejs Docker