概要
タイトルにある通り、
Windows11でWSLをセットアップして
WSL内でDockerをプルって
DockerをVScodeに認識させて
VScodeでPythonを動かしGPUも認識させるという欲張りセットです
前提
GPUセットアップは完了済
(Windows x Python では認識できている状態)
環境
Windows11
wsl2
docker
手順
まずはWSLをセットアップします
この記事がすごくわかりやすいです
(ちなみにこちらの記事を最後まで行うとDockerの環境構築まで終わります)
※WindowsStoreと紹介されている部分は
MicroSoftStoreと同じなので迷われないようにお気をつけ下さい
WSLからWindowsのディレクトリを見る
WSLが問題無く起動できたはいいけど
Windowsにあるフォルダをどうやって見るんだろうか...
色んなやり方がありそうでした。
以下の記事がとても参考になります
今回はWSL(ubuntu)から見ると「/mnt」にwindowsのフォルダ構成がマウントされていた為、
/mntからこちゃこちゃフォルダやらファイルを触ることにします(楽そうだし...。)
Dockerをセットアップ
WSLのセットアップを先ほどの記事を参考にした方は、
Dockerのセットアップまで終わっているはずです。
あとでPythonも動かすので
Pythonインストール済みのイメージをプルします
DockerからGPU認識
docker run のオプションで --gpus all って書いとけば認識するはずだが...
※-v でwindowsのフォルダ達がある/mntをDockerの/mntにもマウントさせます
いけてそうですね!!
Docker環境をVScodeで開く
やり方はいくつかあると思いますが
ubuntu触っているときに簡単だと思った方法で試してみます
VScodeを開きます
拡張機能「Dev Containers」をインストールします
※もし2つ以上起動していて選択に迷ったら、WSLをもう1つ新規で開き以下を実行
docker ps -a
私は「今さっき開いたからCREATEDは数秒前でそれの名前はこれか~」とかで判断してます
アタッチするコンテナを選んだら新規でVScodeが立ち上がります
無事コンテナを認識してます
docker run ~~の際に「-v /mnt:/mnt」を入れていたら問題無くwindowsにあったフォルダを選択できます
枠内に打ち込んだり、ドロップダウンから選択して任意のフォルダを開きます
Pythonを動かす
Pythonファイルを開くと拡張機能が無いと言われたので入れておきます
インストールを押せば問題無く完了しました
これでPythonが動かせるようになりました
※DockerイメージにPythonが無い場合はインストールが必要になります
GPU認識確認
今回はPytorchで確認します(cuda11.7を入れているので以下でインストール)
※DockerにインストールしたいのでDockerを開いているターミナルかVScodeのターミナルで行う
pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu117
※参考サイト
違うバージョンのcudaを入れている方は以下のリンクから探してください
python起動して以下を実行
import torch
print(torch.cuda.is_available())
Trueと出力されたので認識されてますね!
これでやりたいことは全部できたはず。
完了!!