Windows下的VScode用Docker(WSL2)容器做运行环境

发布时间 2024-01-01 20:18:37作者: Nolca

这个业务需求看起来挺奇葩,因为想用rapids包换掉sklearn,用GPU跑更快,但我想用Docker版本的。

docker run,不要-rm

对官方的初始化bash命令做了小修改,会创建一个名为cupy的容器,将Windows本机d:\Code\Python\硬链接到Linux的/data
注意,关闭此命令行窗口后,容器就会停止运行。

docker run --gpus all --name="cupy" -v d:\Code\Python\:/data -it --shm-size=1g --ulimit memlock=-1 --ulimit stack=67108864 -p 8888:8888 -p 8787:8787 -p 8786:8786 rapidsai/rapidsai:23.08a-cuda11.2.2-py3.9

VScode连接至现有的Docker环境

安装vscode插件:dev container
F1调出命令面板,搜索附加到正在运行的容器,选择cupy
打开文件夹,选择/data

如果有文件io操作,python也要改变当前工作目录

import os
os.chdir('/data')

因为windows下scikit-learn跑的时候,CPU几乎不转,3%不到的占用。
换linux就跑起来了,20%的CPU占用