1. 程式人生 > >docker掛載本地目錄,實現檔案共享

docker掛載本地目錄,實現檔案共享

docker可以支援把一個宿主機上的目錄掛載到映象裡。

?

1 docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu64 /bin/bash

通過-v引數,冒號前為宿主機目錄,必須為絕對路徑,冒號後為映象內掛載的路徑。

現在映象內就可以共享宿主機裡的檔案了。

預設掛載的路徑許可權為讀寫。如果指定為只讀可以用:ro

?

1 docker run -it -v /home/dock/Downloads:/usr/Downloads:ro ubuntu64 /bin/bash

docker還提供了一種高階的用法。叫資料卷。

資料卷:“其實就是一個正常的容器,專門用來提供資料卷供其它容器掛載的”。感覺像是由一個容器定義的一個數據掛載資訊。其他的容器啟動可以直接掛載資料卷容器中定義的掛載資訊。

看示例:

?

1 docker run -v /home/dock/Downloads:/usr/Downloads  --name dataVol ubuntu64 /bin/bash

建立一個普通的容器。用--name給他指定了一個名(不指定的話會生成一個隨機的名子)。

再建立一個新的容器,來使用這個資料卷。

?

1 docker run -it --volumes-from dataVol ubuntu64 
/bin/bash

--volumes-from用來指定要從哪個資料捲來掛載資料。