前言

我想讓 container 裡面的資料是存取於外面的硬碟。

一般情況下如果一個 container 起來之後,資料要怎麼同步到別的地方 (不是 container 裡面),

一定會想著該怎麼傳資料,除了靠 scp 等方式傳,Docker 也是可以掛載硬碟給它。

所以 Docker 有 volume 功能

建立 volume

docker volume create volumedisk

查看

docker volume ls

掛載

(volume 名稱:/container 裡的實際路徑) (volumedisk 沒被 create 也可以 ↓ 自動建立了)

docker run -v volumedisk:/volumedata -it centos bash

測試

編輯一個檔案 (container 裡面)

touch /volumedata/wow

實際也會存在外面的 ↓ 這裡 (如果前面沒有 create volume 時,Docker 會直接取一個亂數字串當 volume 名稱)

/var/lib/docker/volumes/volumedisk/_data/wow

當然你也可以指定其它的路徑

(前面直接接外面的實體路徑)

docker run -v /root/crossdocker/volumedisk:/volumedata -it centos bash

 

最後修改日期: 2020 年 11 月 30 日

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。