WSL 虚拟机初步设置和软件安装
📺 本图文教程由视频整理而成,对应的参考视频:Windows上使用Docker系列之二~WSL虚拟机基础设置+软件安装+防火墙~。如需查看更详细、更具体的操作演示,可观看原视频。
场景:上一期已完成 WSL 虚拟机安装(WSL2 安装和使用)。本期对虚拟机做初步设置并安装常用软件,为后续使用 Docker 懒人包打基础。全程共 7 步,其中第 1、4、5 步为可选,整体一劳永逸,设置一次后续无需再操作。
准备工作:启动 WSL 虚拟机
- 任务栏左下角 Windows 图标上点击右键,选择「终端」。
- 两种方式进入虚拟机(任选其一):
- 输入
wsl ~回车(进入默认虚拟机主目录)。 - 点击终端标题栏的下拉箭头,选择虚拟机名称(如 d1)直接打开窗口。
- 输入
wsl ~本教程以 Debian 演示(体积小,约 300 多 MB);Ubuntu 流程完全一致,且部分步骤更简单。进入后命令行前缀变为「用户名@设备名:路径」即表示已进入虚拟机。
第一步:安装 curl 工具(可选,仅 Debian 需要)
Ubuntu 已内置 curl,可跳过本步;Debian 需要手动安装,为第二步的换源脚本做准备。
sudo -i # 进入管理员模式(输入密码,密码不显示)
apt update # 更新软件源
apt install curl -y技巧:
apt update连接 Debian 官方源较慢(国外服务器),若速度低于 10k 可按Ctrl+C中断后重新运行,支持断点续传。后续换国内源后速度会明显提升。
第二步:换国内源 + 安装 Docker
本步参考视频:Linux换国内源+Docker安装及加速。
# 1. 换国内源(按提示选择:北方可选阿里云/清华大学,南方可选南京大学/上海交大)
bash <(curl -sSL https://linuxmirrors.cn/main.sh)
# 2. 安装 Docker 环境(同样选择清华源,镜像源保持默认即可)
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)执行后再次运行 apt update 验证,速度应有明显提升。Docker 环境即安装完成。
第三步:安装 1Panel(文件管理器 + Docker 管理器)
1Panel 提供图形化文件管理和 Docker 管理功能,还自带终端与计划任务,强烈推荐。
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"按提示依次选择:
- 语言选择:输入
2(简体中文)回车。 - 安装目录:默认
/opt,直接回车。 - 是否配置镜像加速:务必输入
n回车(若选 y,飞牛/绿联等系统上的 Docker 可能全部消失;其他系统后续会单独配置镜像加速)。 - 端口:自定义,示例
10010。 - 安全入口:自定义,示例
haoyong。 - 创建用户名(示例
haoyong)和密码(只输入一遍,注意别输错)。
安装完成后终端会显示访问地址(地址:端口/安全入口)及账号密码。复制链接在浏览器打开,登录即进入 1Panel 主界面。

说明:因上期已将网络模式设为 Mirrored(镜像),虚拟机与宿主机(Windows)共用同一 IP,只要端口不冲突即可直接访问。
第四步:开启 SSH(可选,其他设备远程登录时)
仅在 Windows 上使用则无需本步;若需从其他系统(Mac、Linux 等)访问该虚拟机,开启 SSH:
apt update
apt install openssh-server -y然后用任意 SSH 终端(如 Tabby)配置地址、端口、用户名、密码即可连接。其他系统开启 SSH 可参考:常用NAS系统如何开启SSH功能。
第五步:添加共享挂载并设置开机启动(可选)
CloudDrive2(CD2)、LitePan 挂载网盘到本地前必须执行共享挂载,否则会报错。本步可选,但后续使用懒人包(含这两个软件)时需要。
# 1. 立即执行共享挂载
mount --make-shared /
# 2. 编辑开机计划任务
nano /etc/crontab在 /etc/crontab 文件底部空行处添加以下内容,然后 Ctrl+S 保存、Ctrl+X 退出:
@reboot root mount --make-shared /含义:每次重启(@reboot)时以 root 身份自动执行共享挂载命令。
第六步:安装 KSpeeder(解决 Docker 镜像拉取问题)
本步参考视频:Docker镜像加速专家KSpeeder。
6.1 运行容器
docker run -d \
--name kspeeder \
--restart unless-stopped \
-p 25443:5443 \
-p 25003:5003 \
-v /mnt/mydisk/tools/kspeeder/kspeeder-data:/kspeeder-data \
-v /mnt/mydisk/tools/kspeeder/kspeeder-config:/kspeeder-config \
--network bridge \
registry.kspeeder.com/linkease/kspeeder:latest- 端口说明:
25003为后台管理端口,25443为镜像流量端口。 - 访问后台:浏览器打开
http://本机IP:25003,可查看镜像拉取速度与流量。
6.2 修改 Docker 配置,使后续拉取走 KSpeeder
nano /etc/docker/daemon.json将文件内容替换为:
{
"registry-mirrors": ["https://registry.linkease.net:25443/"]
}(nano 中可用 Ctrl+K 删除整行,粘贴后 Ctrl+S 保存、Ctrl+X 退出。)
systemctl restart docker重启 Docker 后配置生效,后续拉取镜像自动经 KSpeeder 加速,为使用懒人包打下基础。
第七步:修改 HyperV 虚拟机防火墙(局域网其他设备访问)
到本步为止,本机已可通过 本机IP:端口 或 localhost:端口 访问所有程序,但局域网其他设备还无法访问——因为 WSL 底层 HyperV 虚拟机的默认防火墙阻止了所有入站流量。
使用 PowerShell(管理员) 运行:任务栏左下角 Windows 图标右键 →「终端(管理员)」。
# 1. 查看当前防火墙状态(inbound 为 block,outbound 为 allow)
Get-NetFirewallHyperVVMSetting -PolicyStore ActiveStore -Name '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}'
# 2. 将入站默认动作改为允许
Set-NetFirewallHyperVVMSetting -Name '{40E0AC32-46A5-438A-A0B2-2B479E8F2E90}' -DefaultInboundAction Allow再次执行第一条命令确认 inbound 已变为 allow,此后局域网内其他设备即可直接访问虚拟机内的所有容器和程序,WSL 虚拟机可为整个局域网提供服务。
总结
至此完成 WSL 虚拟机的全部初步设置:换国内源、安装 Docker、1Panel 图形化管理、SSH 远程登录、网盘共享挂载、KSpeeder 镜像加速、局域网访问放行。本机与局域网其他设备均可正常访问服务,之后可自由安装所需软件。
后续将推出好用斋 Docker 懒人包教程,可一键安装 40 多个程序,敬请期待。