はじめに
nvidiaのGPUを使った機械学習の環境を整えたい。でも、なんか、面倒臭そう...
いえいえDockerを使えば簡単です。
下記のコマンドを使うと簡単に環境構築ができます。次に詳しく見ていきましょう。
docker run -v $PWD:/working -e DISPLAY=$DISPLAY --net host --gpus all --shm-size=8gb --name ml -it --workdir /working gcr.io/kaggle-gpu-images/python:v80 /bin/bash
コマンド説明
短いコマンドから徐々に引数を付け加えていき説明します。
このコマンドでまずkaggleのGPU版のイメージをコンテナとして実行します。
オンラインで実行したい場合
docker run gcr.io/kaggle-gpu-images/python:v80
オフラインで実行したい場合 参考
docker run -it gcr.io/kaggle-images/python /bin/bash
オプションの説明
-e DISPLAY=$DISPKAY
環境変数を設定 GUIアプリケーションを実行するためにディスプレイの環境変数を設定する。
-v $PWD:/working
ホストとファイルを共有できる。ホストのカレントディレクトリのファイルをdocker上のworkingで操作できるようにする。
--net host
ネットワーク設定 ホストと同じネットワークを持てるようになる。参考
--gpus all
ホストのGPUをすべてコンテナ上で使えるようにする。
--name
コンテナの名前をつける
/bin/bash
bashを起動する。bashの見でも可能
--shm-size 8gb
dockerの共有メモリのサイズを決定、デフォルトでは64mbで少ないので8GBとした。参考