2016-09-14 90 views
0

我已經創建了一個docker映像的卷。該碼頭工人形象是:如何在主機操作系統和docker容器之間共享文件夾

REPOSITORY      TAG     IMAGE ID   CREATED    SIZE 
gcr.io/tensorflow/tensorflow latest-gpu   7f09e75cdc12  4 months ago  1.289 GB 

和容器體積:

CONTAINER ID  IMAGE          COMMAND    CREATED    STATUS     PORTS 
e99c80d2d53e  gcr.io/tensorflow/tensorflow:latest-gpu "/run_jupyter.sh" 21 hours ago  Up 11 minutes    6006/tcp, 0.0.0.0:8888->8888/tcp deep 

我需要將主機Ubuntu 16.04 OS和泊塢窗容器之間共享文件夾。 我跑這個命令這樣做:

搬運工運行-v /家庭/柯塔娜/深學習/:/家庭gcr.io/tensorflow/tensorflow:latest-gpu

這didnt導致文件夾被加載到容器deep中。在此之後我不知道該做什麼,並且對docker中的容器內容真的很陌生。請解釋你的答案。

編輯: 我刪除的容器,然後跑了這些命令:

docker run -v /home/cortana/deep-learning/:/home gcr.io/tensorflow/tensorflow:latest-gpu 
nvidia-docker run -p 8888:8888 --name deep gcr.io/tensorflow/tensorflow:latest-gpu 
nvidia-docker exec -it deep bash 

沒有在容器中的/home/文件夾名爲deep-learning文件夾。我在這裏做錯了什麼?

回答

0

我沒有注意到要更改正在運行的容器上的已裝入卷的API。您銷燬現有容器(docker stopdocker rm),並使用正確的配置創建一個新的容器(docker run)。如果你發現自己想維護一個容器,升級容器內部的應用程序或內部的數據,那麼很可能你試圖重新創建一個虛擬機,而不是隔離一個流程,這是一種反模式。


從您的編輯中,您沒有創建/ home/deep-learning文件夾,您創建了/ home文件夾。您似乎還創建了第二個名爲deep的容器,沒有任何卷裝,並將其放入該容器中。爲了與將/ home /深學習容積的容器安裝和深厚的名稱,運行它想:

docker run -v /home/cortana/deep-learning:/home/deep-learning \ 
    -p 8888:8888 --name deep gcr.io/tensorflow/tensorflow:latest-gpu 
+0

我不知道很多關於泊塢窗或虛擬化。我只想使用我使用docker安裝的tensorflow庫,並且想要使用基於GUI的編輯器來編輯Docker容器中的文件。你建議我應該做什麼? –

+0

我已經更新了我的問題,並提供了對您的修改的回覆。 – BMitch

+0

非常感謝。現在就開始工作吧! –

相關問題