【2024】Windows 11 安装WSL2并搭建深度学习环境(Docker,Pytorch)

本文详细介绍了如何在Windows11中安装和配置WSL2,包括启用Hyper-V、安装Ubuntu、升级NVIDIA驱动、安装CUDA、配置Docker以获取和基于镜像创建开发环境,以及在VSCode中使用WSL进行开发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

完成一和二,可用VS Code连接WSL,进行开发(train的速度略快于Widnows)

完成三,可用VS Code连接Docker镜像,代码在本地开发,在Docker镜像中运行

一、Windows11安装WSL2

1.1 启用3个Windows功能

打开控制面板,找到下图,点击“程序”

点击“启用或关闭Windows功能”

启用3个Windows功能,如下图

启用以上三个Windows功能,若没有Hyper-V,则根据以下步骤添加

1.2 添加Hyper-V【可选】

在桌面新建一个文本文件,将下面的程序复制进去,之后修改文件后缀名为.bat

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

最终效果如下图,双击运行即可。

1.3 安装Ubuntu

打开Microsoft Store,搜索Ubuntu,安装即可。

之后启动刚才下载的ubuntu

若出现报错0x800701bc

则点击下面的链接,下载WSL更新包

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

下完后双击运行wsl_update_x64.msi即可。

打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:

wsl --set-default-version 2

之后再次运行Ubuntu,按照要求输入用户名和密码即可(密码不会显示,别误认为自己输错了)

二、安装NVIDIA驱动,CUDA

我的显卡是GeForce GTX 1050 Ti,电脑自带CUDA驱动版本是11.1。如下图

建议升级到新版驱动,这样的话,就无需在WSL中安装NVIDIA驱动,直接就能使用。升级驱动后,如下图

2.1 安装/升级 NVIDIA驱动

进入下載適合玩家和創作者的 NVIDIA App | NVIDIA

下载NVIDIA App,之后下载可用的最新的驱动

之后打开windows的cmd,执行nvidia-smi查看当前CUDA驱动版本

nvidia-smi

打开WSL,执行nvidia-smi。WSL中应该也能看到相同的结果。

2.2 更新Linux的软件列表

在WSL中执行如下命令(主要是安装gcc,否则下一步的安装无法进行)

sudo apt-get update                    #更新软件列表
sudo apt-get install build-essential   #安装必备的工具包

2.3 安装CUDA Toolkit【现在不用了】

较新的CUDA driver版本来说,不需要再安装这个了。在Windows或WSL系统上,安装pytorch的时候,pytorch已经自动帮我们安装好pytorch所需要的CUDA Toolkit了,不需要再手动安装。

这也是我们刚才更新NVIDIA驱动版本的原因

在Linux系统上,仍需要手动安装全局的CUDA Toolkit

进入CUDA Toolkit 12.3 Update 2 Downloads | NVIDIA Developer

下载CUDA ToolKit,要与上面的CUDA Version对应,历史版本见下图

找到正确的版本后,在WSL中,输入命令即可

命令1:下载.sh文件

命令2:运行sh文件(都按照默认设置安装即可)

第一个界面输入accept

第二个界面找install

执行如下指令,添加环境变量。注意要修改为自己安装的cuda版本,我这里是cuda-12.3

(建议将这2条加入linux系统环境变量,否则系统重启后,环境变量就没了,上网搜索即可。若加入系统变量,要先重启,才会生效)

export PATH="/usr/local/cuda-12.3/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-12.3/lib64:$LD_LIBRARY_PATH"

执行nvcc -V,得到如下结果,则成功

2.4 安装anaconda或miniconda

打开WSL终端

在官网Installing Miniconda - Anaconda找到下载链接,用wget下载.sh文件

wget 下载链接

之后运行.sh文件,安装anaconda或miniconda

2.5 conda创建虚拟环境,安装pytorch+cu116

在conda prompt中执行如下命令,创建虚拟环境

conda create -n torch_gpu python=3.9

在pytorch官网找到对应命令,在虚拟环境下执行即可(根据自己的需要,找版本,安装的cuda版本不能高于机器中CUDA Version。我的机器CUDA Version是12.3,所以安装的cu116(cuda 11.6)没毛病)

三、测试pytorch环境

进入WSL终端,激活你用conda创建的pytorch环境,执行

import torch # 导入pytorch包
print(torch.cuda.is_available()) # pytorch能否使用NVIDIA显卡,应输出True
print(torch.cuda.device_count()) # 可用的显卡数量,应该大于0

到这一步,你已经可以使用WSL搞深度学习了,下面是基于Docker镜像的深度学习环境搭建

四、基于Docker镜像的深度学习环境搭建

这部分参考新文章:

【2025深度学习环境搭建-1】在Win11上用WSL2和Docker解锁GPU加速

【2025深度学习环境搭建-2】pytorch+Docker+VS Code+DevContainer搭建本地深度学习环境

参考资料

旧版 WSL 的手动安装步骤 | Microsoft Learn

1. NVIDIA GPU Accelerated Computing on WSL 2 — CUDA on WSL 12.3 documentation

Docker Desktop WSL 2 backend on Windows | Docker Docs在WSL 2中配置Cuda以及gpu版本的pytorch(2022最新版) - 知乎

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值