環境:Windows8.1
#【経緯】
http://yaju3d.hatenablog.jp/entry/2016/04/07/011033
上記のサイトを参考にjupyterでtensorflowをいじろうと思いましたが、フォルダ丸ごとのアップロードはできなかったため、
WindowsとDockerを共有すれば簡単にアップロードできるのではないかと思いました。
しかし、なかなかうまくいかず1時間ほど共有に時間がかかってしまったため、
分かりやすい説明をして情報展開できればいいなと考えました。
#【準備】
下記のサイトからWindows版のDockerをダウンロードしてインストールします。
https://www.docker.com/products/docker-toolbox
#【フォルダ共有手順】
①「Docker Quickstart Terminal」を立ち上げます。
② 「docker run -p 8888:8888 -p 6006:6006 --name nobu_tensor -v //c/Users/nobu/tensorflow_share:/notebooks -it b.gcr.io/tensorflow/tensorflow」
をdockerのターミナルで実行します。
・--nameオプションの値は好きなコンテナ名を入力してください
(ここではコンテナ名を「nobu_tensor」にしています)
・-vオプションの値は [ローカルの共有したいフォルダパス:Dockerの共有したいフォルダパス] を入力します。
ここではローカルの共有フォルダに「C:\Users\nobu\tensorflow_share」を指定しています。
notebooksは変更しないようにしてください
-vオプションの値は各自の環境に合わせて設定してください。
③dockerターミナルで「Ctrl+c」を押してください。「Shutdown this notebook server (y/[n])?」と聞かれるので、「y」を入力してエンターを押します。そうすることでサーバが一旦止まります。
④dockerターミナルで「docker start nobu_tensor」と入力します(nobu_tensorの部分は手順②で入力したnameオプションの値です)。
下記のサイトへブラウザからアクセスしてみてください。jupyterが起動します。
http://192.168.99.100:8888/
④dockerターミナルで「docker exec -it nobu_tensor bash」と入力するとコンテナへ入れます
(nobu_tensorの部分は手順②で入力したnameオプションの値です)。
⑤コンテナへ入ると既にnotebooksフォルダ配下にいますので、例えば「touch aaa.txt」と入力すると「aaa.txt」ファイルが作成されます。
lsコマンドでファイルが作成されたか確認してみてください。
⑥さて、ローカルに指定した共有フォルダ(C:\Users\nobu\tensorflow_share)を開いてみると、あら驚き・・・。
コンテナで作成した「aaa.txt」が入っています!!
さらに、 http://192.168.99.100:8888/ へアクセスしてみると、またまた驚き・・・。
「aaa.txt」が現れています!!!
これで、dockerとwindowsのフォルダが共有され、さらにjupyterへもファイルが共有されています。
#【参考サイト】
・Dockerであそぶ(3)Apacheを使う
http://tech.pjin.jp/blog/2015/12/03/docker%E3%81%A7%E3%81%82%E3%81%9D%E3%81%B6%EF%BC%88%EF%BC%93%EF%BC%89apache%E3%82%92%E4%BD%BF%E3%81%86/
・docker コマンド チートシート
http://qiita.com/voluntas/items/68c1fd04dd3d507d4083
・コンテナに入りたい?それ docker exec でできるよ
http://qiita.com/yosisa/items/a5670e4da3ff22e9411a