前言
我想讓 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
留言