目录
- WSL2
- WSL2安装
- 运行Docker
- 运行第一个Container
WSL2
WSL(Windows Subsystem for Linux)可以让开发者们在win10系统中运行Linux环境,包括Linux命令行及应用等,个人感觉WSL和虚拟机很相似。在之前,WSL一直是不支持使用CUDA的,也就是无法用GPU来进行计算。今年6月,Nvidia推出了CUDA on WSL,使WSL中可以使用GPU了。如果对性能要求不是特别高,又懒得装双系统的,可以试试WSL2。
Nvidia官方的安装教程:https://docs.nvidia.com/cuda/wsl-user-guide/index.html#installing-wip 里面还是说的很清楚的。
WSL2安装
- 首先要去这里注册Microsoft Windows Insider Program,直接使用微软的账号就行,速度可能比较慢,多等一会让就行。
- 打开系统设置–进入“更新与安全”–选择“Windows预览体验计划”–选择“Dev计划”–之后回到之前的页面,检查更新
更新完以后可以检查下自己的版本对不对,要求是20145或更高。在设置–系统–关于里查看或在cmd里直接查看
3. 接下来去Nvidia网站上下载CUDA on WSL
4. 下载WSL2,参考微软的官方教程 首先以管理员身份打开powershell,输入
# 安装WSL。
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
和
#启用“虚拟机平台”可选功能。
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
然后重启计算机,输入
#把默认WSL版本设置为WSL2
wsl --set-default-version 2
如果安装出现问题,显示WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel
就进入https://aka.ms/wsl2kernel,按照里面的方法再试试。
5.上一步结束后打开cmd,输入
wsl cat /proc/version
查看Linux内核版本,大于4.19.121+。这样就没有问题了
6. 安装Linux子系统
进入https://aka.ms/wslstore 我安装的是Ubuntu16.04
可以在cmd里输入
wsl.exe --list -v command
确认下是否为WSL2
没有问题的话在cmd里输入wsl就可以进入该系统了
运行Docker
在WSL中输入Linux指令
curl https://get.docker.com | sh
# 安装nvidia-docker2
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
curl -s -L https://nvidia.github.io/libnvidia-container/experimental/$distribution/libnvidia-container-experimental.list | sudo tee /etc/apt/sources.list.d/libnvidia-container-experimental.list
sudo apt-get update
sudo apt-get install -y nvidia-docker2
以上就完成了docker的安装工作
后面用以下命令来开启和停用docker
sudo service docker stop
sudo service docker start
运行第一个Container
输入
docker run -it --gpus all -p 8888:8888 tensorflow/tensorflow:latest-gpu-py3-jupyter
来运行包含了tensorflow的镜像。第一次运行可能需要下载和安装。
成功运行可以看到以上界面,在windows系统的浏览器中输入localhost:8888/tree
输入token即可