2015-10-19 297 views

回答

6

這很簡單。您必須將一個目錄共享到兩個不同的容器,然後才能訪問該目錄中的相同數據。

docker run -v myfolder:/data/myfolder image-name-1 
docker run -v myfolder:/data/myfolder image-name-2 
+0

感謝您的回答。 我有一個應用程序在一個容器內運行,它將在目錄中生成一些文件。您的解決方案是主機==> container1和主機==>容器。我想要的是container1 ==> container2 –

+1

@GaneshSatpute你應該去這個答案,而不是直接共享兩個容器之間的數據。文件傳輸應通過共享卷(主機)或通過專用卷容器完成。本指南深入到碼頭卷中:http://container-solutions.com/understanding-volumes-docker/ – michaelbahr

11

劉若英的回答工作,但你可以不使用主機的目錄(container1 ==> container2的)共享數據:

docker run -v /data/myfolder --name container1 image-name-1 
docker run --volumes-from container1 image-name-2 
+0

嗨@曼努埃爾,感謝您的回答。您能否詳細說明我將如何訪問container2內的這些文件? –

+0

只是一個更新曼努埃爾。我試了一下,這很好用!但問題是它安裝在與源容器相同的位置。我可以在其他地方安裝它嗎? –

+0

嗨,這不支持,有[與此相關的建議](https://github.com/docker/docker/issues/11261),但此時不可能更改安裝點的位置。 –

5

https://docs.oracle.com/cd/E52668_01/E54669/html/section_ffp_yt4_gp.html

給出了一個例子。在此基礎上我創建

https://github.com/BITPlan/docker-stackoverflowanswers/tree/master/33232991

Dockerfile.data

# Dockerfile that modifies ubuntu to create a data volume container 
FROM ubuntu:14.04 
RUN mkdir -p /var/www/html 
RUN echo "This is the content for file1.html" > /var/www/html/file1.html 
RUN echo "This is the content for file2.html" > /var/www/html/file2.html 
RUN echo "This is the content for index.html" > /var/www/html/index.html 
VOLUME /var/www/html 
ENTRYPOINT /usr/bin/tail -f /dev/null 

用於數據圖像和

Dockerfile

# Ubuntu image 
FROM ubuntu:14.04 

爲圖像測試其他數據量的使用量。

docker build -t bitplan/dataonly:0.0.1 -f Dockerfile.data . 
docker build -t bitplan/dataexample:0.0.1 . 

建立這些圖像

,他們都展現在我的圖片列表現在:

docker images | grep data 

[email protected]:~/source/docker/stackoverflow2> docker images | grep data 
bitplan/dataonly   0.0.1    aa6aeb923f55  9 minutes ago  188.4 MB 
bitplan/dataexample  0.0.1    a005e6b7dd01  7 days ago   188.4 MB 

運行和測試與

docker run -d --name html bitplan/dataonly:0.0.1 
docker run --volumes-from html bitplan/dataexample:0.0.1 ls /var/www/html 

做到這表明:

0ebb78f209169fb7d281bb6b06851b33af7a98488c3a38cf25ac92fe983fff43 
file1.html 
file2.html 
index.html 
相關問題