Skip to content

WSL 虚拟机初步设置和软件安装

📺 本图文教程由视频整理而成,对应的参考视频:Windows上使用Docker系列之二~WSL虚拟机基础设置+软件安装+防火墙~。如需查看更详细、更具体的操作演示,可观看原视频。

场景:上一期已完成 WSL 虚拟机安装(WSL2 安装和使用)。本期对虚拟机做初步设置并安装常用软件,为后续使用 Docker 懒人包打基础。全程共 7 步,其中第 1、4、5 步为可选,整体一劳永逸,设置一次后续无需再操作。

提示:本教程配套的操作文档,可在好用斋官网网盘分享(提取码 586)中下载。

准备工作:启动 WSL 虚拟机

  1. 任务栏左下角 Windows 图标上点击右键,选择「终端」。
  2. 两种方式进入虚拟机(任选其一):
    • 输入 wsl ~ 回车(进入默认虚拟机主目录)。
    • 点击终端标题栏的下拉箭头,选择虚拟机名称(如 d1)直接打开窗口。
bash
wsl ~

本教程以 Debian 演示(体积小,约 300 多 MB);Ubuntu 流程完全一致,且部分步骤更简单。进入后命令行前缀变为「用户名@设备名:路径」即表示已进入虚拟机。

第一步:安装 curl 工具(可选,仅 Debian 需要)

Ubuntu 已内置 curl,可跳过本步;Debian 需要手动安装,为第二步的换源脚本做准备。

bash
sudo -i        # 进入管理员模式(输入密码,密码不显示)
apt update     # 更新软件源
apt install curl -y

技巧:apt update 连接 Debian 官方源较慢(国外服务器),若速度低于 10k 可按 Ctrl+C 中断后重新运行,支持断点续传。后续换国内源后速度会明显提升。

第二步:换国内源 + 安装 Docker

本步参考视频:Linux换国内源+Docker安装及加速

bash
# 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
bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"

按提示依次选择:

  1. 语言选择:输入 2(简体中文)回车。
  2. 安装目录:默认 /opt,直接回车。
  3. 是否配置镜像加速:务必输入 n 回车(若选 y,飞牛/绿联等系统上的 Docker 可能全部消失;其他系统后续会单独配置镜像加速)。
  4. 端口:自定义,示例 10010
  5. 安全入口:自定义,示例 haoyong
  6. 创建用户名(示例 haoyong)和密码(只输入一遍,注意别输错)。

安装完成后终端会显示访问地址(地址:端口/安全入口)及账号密码。复制链接在浏览器打开,登录即进入 1Panel 主界面。

1Panel登录成功界面

说明:因上期已将网络模式设为 Mirrored(镜像),虚拟机与宿主机(Windows)共用同一 IP,只要端口不冲突即可直接访问。

第四步:开启 SSH(可选,其他设备远程登录时)

仅在 Windows 上使用则无需本步;若需从其他系统(Mac、Linux 等)访问该虚拟机,开启 SSH:

bash
apt update
apt install openssh-server -y

然后用任意 SSH 终端(如 Tabby)配置地址、端口、用户名、密码即可连接。其他系统开启 SSH 可参考:常用NAS系统如何开启SSH功能

第五步:添加共享挂载并设置开机启动(可选)

CloudDrive2(CD2)、LitePan 挂载网盘到本地前必须执行共享挂载,否则会报错。本步可选,但后续使用懒人包(含这两个软件)时需要。

bash
# 1. 立即执行共享挂载
mount --make-shared /

# 2. 编辑开机计划任务
nano /etc/crontab

/etc/crontab 文件底部空行处添加以下内容,然后 Ctrl+S 保存、Ctrl+X 退出:

bash
@reboot root mount --make-shared /

含义:每次重启(@reboot)时以 root 身份自动执行共享挂载命令。

第六步:安装 KSpeeder(解决 Docker 镜像拉取问题)

本步参考视频:Docker镜像加速专家KSpeeder

6.1 运行容器

bash
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

bash
nano /etc/docker/daemon.json

将文件内容替换为:

json
{
  "registry-mirrors": ["https://registry.linkease.net:25443/"]
}

(nano 中可用 Ctrl+K 删除整行,粘贴后 Ctrl+S 保存、Ctrl+X 退出。)

bash
systemctl restart docker

重启 Docker 后配置生效,后续拉取镜像自动经 KSpeeder 加速,为使用懒人包打下基础。

第七步:修改 HyperV 虚拟机防火墙(局域网其他设备访问)

到本步为止,本机已可通过 本机IP:端口localhost:端口 访问所有程序,但局域网其他设备还无法访问——因为 WSL 底层 HyperV 虚拟机的默认防火墙阻止了所有入站流量。

使用 PowerShell(管理员) 运行:任务栏左下角 Windows 图标右键 →「终端(管理员)」。

powershell
# 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 多个程序,敬请期待。

参考视频

  1. Linux换国内源+Docker安装及加速
  2. 常用NAS系统如何开启SSH功能
  3. Docker镜像加速专家KSpeeder

好用斋官网

https://haoyongzhai.com

Released under MIT License.