Windows AI 开发环境搭建(二):WSL Linux 与 Github、VSCode、Docker 配置

上文介绍了 WSL 下载安装 Linux,本文继续讲解 WSL 如何配置 SSH 连接 Github,Windows 上的 VSCode 如何访问 WSL Linux 上的目录文件,以及 Windows Docker 如何设置以 WSL 为后台引擎,WSL Linux 又如何打通 Windows 使用 Docker 。

紧接上文《WSL 下载安装》,本文介绍 WSL 与第三方软件 Github、VSCode、Docker 的相关配置。

WSL 安装完 Linux 第一步

系统安全更新和软件升级

进入 WSL,执行以下命令行

Bash
sudo apt update && sudo apt upgrade

提示下载完成后,输入 Y,继续安装所有更新。

WSL Linux 安装基础工具

Ubuntu-24.04 默认已经安装了 git、curl、wget、vim,执行下面命令发现已安装会尝试更新,如果是最新会跳过安装。

  • build-essential:编译工具包,包含 C/C++ 编译器 gcc、g++,构建工具 make,标准 C 库等
  • git,无需多言
  • curl,网络通信工具,可以发请求,也可以用于下载
  • wget,网络下载工具
  • zip、unzip,压缩、解压工具
  • tree,树状结构列出目录内容工具
  • btop,资源监视器,显示处理器、内存、磁盘、网络和进程的信息
  • nvtop,GPU 版 btop
  • jq,处理 JSON 工具
  • vim,Linux 经典文本编辑器
Bash
sudo apt install -y \
build-essential \
git \
curl \
wget \
zip \
unzip \
tree \
btop \
nvtop \
jq \
vim

WSL Linux 配置 Git

设置 Git 用户:

Bash
git config --global user.name "你的名字"

git config --global user.email "你的邮箱"

查看已配置项:

Bash
git config --list

WSL Linux 与第三方软件配置

配置 GitHub SSH

生成:

Bash
ssh-keygen -t ed25519 -C "你的邮箱"

一路回车。

查看:

Bash
cat ~/.ssh/id_ed25519.pub

复制到 Github:

Settings
 ↓
SSH and GPG keys
 ↓
New SSH key

测试:

Bash
ssh -T [email protected]

提示如下,继续输入 yes

Bash
...
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
...
Hi yourname! You've successfully authenticated,...

项目下载目录注意事项

在 WSL Linux 存储项目时,推荐使用 WSL Linux 目录:

  • 使用 Linux 文件系统根目录:\\wsl$\<DistroName>\home\<UserName>\project
  • 不是 Windows 文件系统的根目录:C:\Users\<UserName>\Project 或 /mnt/c/Users/<UserName>/Project$

即进入 WSL 后,建议把项目安装在 ~/ 下面,例如新建 project

PowerShell
wsl
Bash
cd ~
mkdir project
cd project
git clone [email protected]:yourprojectname.git

因为 Linux、Windows 的目录结构不一样,虽然可以相互访问,但底层还是需要格式转换,例如像 npm 安装包 node_modules 中有大量的零碎小文件的项目如果放在 Windows 目录下,WSL 访问时大量的转换很耗性能。

建议把项目下载到 Linux 的原生目录下面,注意 /mnt/ 开发不是 Linux 原生目录,表示 Linux 挂载访问 Windows 目录,底层依旧会格式转换处理文件目录格式问题,有性能损失。

Windows VSCode 与 WSL Linux 互通

Windows 上安装 VS Code,

然后安装插件:Visual Studio Code WSL 插件

也可以安装插件集合 Remote Development (Visual Studio Code Remote Development Extension Pack),该插件包含 Visual Studio Code WSL

切换到你 git clone 拉下来的项目里,打开 VSCode

Bash
cd ~/project/yourprojectname

code .

此时:

VS Code 界面:Windows 运行

终端:Ubuntu,ctrl + ` 打开 Terminal,输入 Linux 命令验证

Bash
htop

Windows Docker 与 WSL Linux 互通

安装:Windows Docker,选择 x86-64(常见英特尔或AMD) 的 CPU 选 AMD64,ARM 架构的 CPU 选 ARM64 版本。

安装时注意选择有 ✅ Uses the WSL 2 backend 的选项,一般默认即可

打开 Docker Desktop,按需登录或跳过 Skip

如果已在 WSL 之前已经安装了 Docker,切换 WSL2:

Settings
 ↓
General
 ↓
Choose how to run Docker containers
✅ WSL2 ❌ Hyper-V

打开 PowerShell

PowerShell
docker version # Docker 详细信息...

进入 WSL,输入查看 docker,这个时候还无法访问

Bash
docker version # -bash: /usr/bin/docker: No such file or directory

Docker Desktop 开启:

Settings
 ↓
Resources
 ↓
WSL Integration
 ↓
如果 WSL 只安装了一个 Linux
✅ Enable integration with my default WSL distro 

如果有多个版本,选择你想打通的 Linux 即可
Enable integration with additional distros:
✅ Ubuntu-24.04 

再次进入 WSL Ubuntu 测试:

Bash
docker version # 会显示 Docker 详细信息...

如果显示如下访问拒绝,可以尝试退出 exit wsl,再重新进入即可。还不行重启 Docker。

Bash
permission denied while trying to connect to the Docker API at unix:///var/run/docker.sock

不用在 Ubuntu 上再安装 Docker

确保 WSL2 能访问 NVIDIA GPU

WSL2 可以使用 Windows NVIDIA 驱动。

Windows 安装最新版 NVIDIA Driver。

Ubuntu 测试:

Bash
nvidia-smi # 显示你英伟达显卡、驱动、CUDA 信息

如果i按时完整信息,表示可以正常利用 GPU 了。

可选:Windows Terminal 设置

搜索框输入终端、cmd、powerShell,或在任意文件夹空白处右键,点击在终端中打开,右上角向下箭头可以新增 Linux 窗口,默认目录是 ~/。

可以设置默认启动终端是 Linux,也可以给窗口配置喜欢的色彩。