Dockerでホスト側のファイルと同期する方法

ホスト側のファイルをDockerと動機する

みなさはcudaのバージョン管理めんどくさくないですか?私はとてもめんどくさいです。とおおおてもめんどくさいです。 だからDockerに任せることにしました!!
だってDockerならバージョンごとにコンテナ作ればいいじゃんというわけです。

pytochのDocker Imageからうまいことやる

まず今回のDockerfileはこんな感じ。

FROM pytorch/pytorch:1.3-cuda10.1-cudnn7-devel

ENV HOME=/home
WORKDIR $HOME


RUN pip install imageio tensorboard pandas scipy opencv-python torchnet torchsummary scikit-image jupyter
RUN apt-get update -y && apt-get upgrade --fix-missing --fix-broken -y
RUN apt-get install libgtk2.0-dev -y

区切りながら解説して行きます。 実行コマンドは

docker run --gpus all --rm -v 同期したいファイルのパス:Dockerのコンテナ内のパス -it Docker image名

jupyter notebookを利用する場合はportの設定があるため,

docker run --gpus all --rm -it -v 同期したいファイルのパス:Dockerのコンテナ内のパス -p 8888:8888 Docker image名

コンテナが起動したら,

jupyter notebook --port 8888 --ip=0.0.0.0 --allow-root

でjupyter notebookを起動することができます.

でオッケイ! これで煩わしさから開放されたね!! 以上!!