1. 準備:
1.創(chuàng)建一個數據卷:
docker run -itd --name test2 -v /home/jamesz2011/data/test2:/test2 ubuntu /bin/bash
2.向數據卷容器中寫入數據:
- 進入數據卷容器:
docker run exec -it test2 /bin/bash
cd test2
- 2.創(chuàng)建一個文件并在文件中輸入“hello world”:
touch word
echo "hello world" > word

3.進入宿主機的容器掛在目錄:
ls
cd data
cd test2
ls
cat word

【注意】
- 1.如果看到輸出“hello world”則證明容器數據與宿主機已成功實現數據共享。
- 2.當容器被刪除,宿主機的數據共享目錄不會被刪除。
- 3.如果需要從宿主機復制文件到宿主機的數據共享目錄,需要使用sudo獲取root權限執(zhí)行復制添加操作。
- 4.如果新建的數據卷容器關聯宿主機已有的數據共享目錄,則數據共享目錄中的數據會被復制到數據卷容器中 。
- 5.數據卷的權限只有rw/r,無x權限,默認rw。
2.備份數據卷容器:
- 新建一個容器【test2backup】用來備份數據卷容器test2,將數據用tar打包,存儲在backup文件中,指定備份的數據卷為test2(容器中的)。
docker run -it --name test2backup --volumes-from test2 -v /home/jamesz2011/backup:/backup ubuntu tar cvf /backup/test2backup.tar /test2
或者:
- 2.查看宿主機下是否有test2backup.tar文件:
cd backup
ls

3.刪除數據卷容器test1中的word文件:
cd test2
ls
rm -vf word
ls
4.將test2backup.tar中的數據還原到test2容器中【即將word文件進行恢復操作】。
sudo docker run -v /home/jamesz2011/data/test2 --name test2rec1 ubuntu /bin/bash
sudo docker run --volumes-from test2rec1 -v /home/jamesz2011/backup:/backup ubuntu tar xvf /backup/test2backup.tar
---參考:----test2必須是運行狀態(tài)
sudo docker run --volumes-from test2 -v /home/jamesz2011/backup:/backup ubuntu tar xvf /backup/test2backup.tar