2017-05-17 8 views
0

私はtensorflowとdockerを初めて使用しています。私はGPUでテンソルフローを使用できるドッキングコンテナを作ろうとしています。既存のnvidia-dockerコンテナを開きます

異なるものを試した後、私は私のNVIDIAドライバをセットアップするために、私は実行することができます管理:

nvidia-docker run -it gcr.io/tensorflow/tensorflow bash 

くれtensorflowイメージとドッキングウィンドウコンテナを開きます。

ケラスをインストールして使用できるテンソルフロードッカーコンテナが作成されているので、これはいいですが、このコンテナを終了すると、作成したすべてのファイルとインストール済みパッケージが緩んでしまいます。

このコンテナを一旦退出してから、すべてのファイルとパッケージをそこに残すことはできますか?

以下

は(この問題を回避行くには、いくつかtensorflow画像が正しくインストールされていなかったので、今ので、私の多くの試行の数が多すぎます)私のドッキングウィンドウの画像とスクリーンショットです:

私は願っていますこれを行う簡単な方法がありますか?

+0

を実行している別の端末に近いですカスタム 'Dockerfile'を使って' gcr.io/tensorflow/tensorflow'の上に置くか、あるいは 'docker commit'を使ってコンテナの現在の状態を新しいイメージに"保存 "します。そうすれば、新しい容器を回転させるたびに 'keras'や他のlibsをインストールする必要はありません。これはあなたが必要とするようなものですか? –

+0

どちらも面白い方法です、あなたの答えに感謝します! – mihaela7089

答えて

0

nvidia-docker run -itあなたが存在していたコンテナが

nvidia-docker start -i CONTAINER_IDまたは
nvidia-docker start -i NAMES

を使用開きたいとあなたはより多くの端末
nvidia-docker exec -it CONTAINER_ID bashまたは nvidia-docker exec -it NAMES bash

をしたい場合は、コンテナ NEW

を作成

更新
ランコンテナコンテナは、どちらかのa)は、独自のドッキングウィンドウの画像を作成するために、それだけの価値があるかもしれない

$ docker ps -a                         [ruby-2.3.1p112] 
CONTAINER ID  IMAGE    COMMAND    CREATED    STATUS     PORTS    NAMES 
acd83fb407b4  rfcn:rfcn   "/bin/bash"   4 days ago   Exited (0) 28 hours ago      rfcn 
$ nvidia-docker start -i rfcn                     [ruby-2.3.1p112] 
[email protected]:/# 

オープンコンテナが

$ nvidia-docker exec -it rfcn bash                    [ruby-2.3.1p112] 
[email protected]:/# 
+0

私はそれを試してみましたが、コンテナを別のターミナルで再び開くためにターミナルで開かれたコンテナを持っていれば動作しますが、それを閉じると再び開くことができません。デーモンからのエラー応答:Container Container_Idが実行されておらず、Container_Idがdockerコンテナのリストから消えているというエラーが表示されます。 – mihaela7089

+0

申し訳ありませんが、私のせいで、それは 'start'でなければなりません。答えを更新してください。 – xxi

+0

私はドッカーexec -it Container_Idを実行しましたが、それは古いコンテナ上で動作しました。私はユーザーがexecの代わりに起動しても、nvidia-dockerのバージョンはまだ動作しません – mihaela7089

関連する問題