You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSL2 Ubuntu20.04配置TensorFlow GPU加速遇Docker及GPU检测问题

我来帮你一步步排查这些WSL2 + TensorFlow GPU加速的问题,这些坑我之前也踩过不少,咱们逐个解决:

1. 先搞定sudo service docker start提示未识别服务的问题

其实这个问题根源很简单:如果你是装了Windows桌面版Docker,那WSL2里的Docker是共享Windows端的Docker daemon,Ubuntu系统里并没有安装Linux版的Docker服务,所以service docker命令自然无效。

解决办法分两种:

  • 推荐方案:打开Windows Docker Desktop的设置 → 「Resources」→「WSL Integration」,确保你的Ubuntu 20.04发行版是勾选状态,点击「Apply & Restart」。之后在WSL2终端里直接用docker命令就行,不需要手动启动服务,它会自动连接Windows的Docker后台。
  • 如果你非要用Linux原生Docker:卸载Windows Docker Desktop,然后在Ubuntu里重新安装Docker Engine + nvidia-docker2,但这种方式配置更繁琐,不推荐。
2. 解决nvidia-container-cli: initialization error错误

这个错误一般是WSL2的NVIDIA驱动或nvidia-docker配置出了问题,按下面步骤来:

  • 先划重点:WSL2用的是Windows版的NVIDIA驱动,不是Linux版!赶紧检查你的Windows端驱动:GTX970推荐装470.x系列的稳定驱动(对老卡兼容性好),如果更了Windows Insider预览版,记得装NVIDIA的预览版驱动(Game Ready或Studio预览版都可以)。
  • 然后在WSL2里安装nvidia-docker2组件:
    1. 添加NVIDIA的软件源:
      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
      
    2. 更新包列表并安装:
      sudo apt-get update
      sudo apt-get install -y nvidia-docker2
      
    3. 重启Docker:如果用Windows Docker Desktop,直接重启Desktop就行;如果是Linux Docker,就跑sudo systemctl restart docker。
  • 最后测试一下:docker run --rm nvidia/cuda:11.0-base nvidia-smi,能正常显示GPU信息就说明没问题了。
3. 解决GTX970不被识别、CUDA示例提示0设备的问题

这是最核心的问题,WSL2没正确挂载Windows的GPU,试试这些办法:

  • 先更到最新的WSL2内核:打开Windows终端,跑wsl --update,更新完成后重启WSL。
  • 检查Windows的虚拟化功能:打开控制面板 → 程序 → 启用或关闭Windows功能,确保「Hyper-V」「Virtual Machine Platform」「Windows Subsystem for Linux」这三个选项都勾选,然后重启电脑。
  • 在WSL2里安装WSL专用的NVIDIA驱动包:
    sudo apt-get install -y nvidia-driver-470
    
    注意:这个是WSL2特有的驱动包,不是完整的Linux驱动,实际驱动还是Windows提供的,别装错了。
  • 跑nvidia-smi看看能不能识别GPU,如果还是不行,试试重置WSL(记得先备份WSL里的重要数据!):
    1. Windows终端里跑wsl --shutdown关闭所有WSL实例
    2. 然后wsl --unregister Ubuntu-20.04(会清空这个发行版的所有内容)
    3. 重新从Microsoft Store安装Ubuntu 20.04,再重新配置环境
  • 额外提醒:GTX970是Kepler架构,TensorFlow 2.5及以后对这个架构的支持有限,建议用TensorFlow 2.4.x版本,或者Docker容器里选CUDA 11.0 + cuDNN 8.0的组合,兼容性更好。

内容的提问来源于stack exchange,提问作者BlackCoffee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 15:57:47