1. 準(zhǔn)備:
1.創(chuàng)建一個(gè)數(shù)據(jù)卷:
docker run -itd --name test2 -v /home/jamesz2011/data/test2:/test2 ubuntu /bin/bash
2.向數(shù)據(jù)卷容器中寫(xiě)入數(shù)據(jù):
- 進(jìn)入數(shù)據(jù)卷容器:
docker run exec -it test2 /bin/bash
cd test2
- 2.創(chuàng)建一個(gè)文件并在文件中輸入“hello world”:
touch word
echo "hello world" > word
3.進(jìn)入宿主機(jī)的容器掛在目錄:
ls
cd data
cd test2
ls
cat word
【注意】
- 1.如果看到輸出“hello world”則證明容器數(shù)據(jù)與宿主機(jī)已成功實(shí)現(xiàn)數(shù)據(jù)共享步淹。
- 2.當(dāng)容器被刪除携取,宿主機(jī)的數(shù)據(jù)共享目錄不會(huì)被刪除碉输。
- 3.如果需要從宿主機(jī)復(fù)制文件到宿主機(jī)的數(shù)據(jù)共享目錄,需要使用sudo獲取root權(quán)限執(zhí)行復(fù)制添加操作。
- 4.如果新建的數(shù)據(jù)卷容器關(guān)聯(lián)宿主機(jī)已有的數(shù)據(jù)共享目錄,則數(shù)據(jù)共享目錄中的數(shù)據(jù)會(huì)被復(fù)制到數(shù)據(jù)卷容器中 箕母。
- 5.數(shù)據(jù)卷的權(quán)限只有rw/r,無(wú)x權(quán)限俱济,默認(rèn)rw嘶是。
2.備份數(shù)據(jù)卷容器:
- 新建一個(gè)容器【test2backup】用來(lái)備份數(shù)據(jù)卷容器test2,將數(shù)據(jù)用tar打包蛛碌,存儲(chǔ)在backup文件中聂喇,指定備份的數(shù)據(jù)卷為test2(容器中的)。
docker run -it --name test2backup --volumes-from test2 -v /home/jamesz2011/backup:/backup ubuntu tar cvf /backup/test2backup.tar /test2
或者:
- 2.查看宿主機(jī)下是否有test2backup.tar文件:
cd backup
ls
3.刪除數(shù)據(jù)卷容器test1中的word文件:
cd test2
ls
rm -vf word
ls
4.將test2backup.tar中的數(shù)據(jù)還原到test2容器中【即將word文件進(jìn)行恢復(fù)操作】左医。
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必須是運(yùn)行狀態(tài)
sudo docker run --volumes-from test2 -v /home/jamesz2011/backup:/backup ubuntu tar xvf /backup/test2backup.tar