鄭嘉裕
你是不是也經(jīng)常在使用Docker的時(shí)候,遇到“數(shù)據(jù)持久化”相關(guān)的困惑?容器刪了,數(shù)據(jù)也跟著沒(méi)了?今天就帶你深入了解Docker的Volume機(jī)制,搞懂什么是Volume、怎么使用、存儲(chǔ)在哪,以及如何實(shí)現(xiàn)多個(gè)容器共享存儲(chǔ)!
一、什么是DockerVolume?
Docker的Volume(卷)是官方推薦的數(shù)據(jù)持久化方案,用來(lái)將容器中的數(shù)據(jù)獨(dú)立存儲(chǔ)在宿主機(jī)上。與容器生命周期解耦,刪除容器不會(huì)影響數(shù)據(jù),非常適合用于數(shù)據(jù)庫(kù)、日志等場(chǎng)景。
簡(jiǎn)單理解就是:容器內(nèi)的數(shù)據(jù)->Volume->宿主機(jī)目錄。
二、Volume的使用場(chǎng)景
容器內(nèi)服務(wù)需要持久化數(shù)據(jù),比如MySQL、Redis、PostgreSQL
??多個(gè)容器之間需要共享數(shù)據(jù)
防止重要數(shù)據(jù)在容器銷(xiāo)毀時(shí)丟失
容器頻繁更新、遷移,但數(shù)據(jù)需要保留
三、Volume怎么使用?
1.創(chuàng)建Volume
dockervolumecreatemydata
查看:
dockervolumels
2.使用Volume運(yùn)行容器
dockerrun-d\--namemysql\-vmydata:/var/lib/mysql\mysql:5.7
這條命令把宿主機(jī)上的mydata卷掛載到了容器中的/var/lib/mysql,MySQL的數(shù)據(jù)就存儲(chǔ)在這個(gè)卷里。
3.查看卷掛載路徑
dockervolumeinspectmydata
輸出中Mountpoint字段會(huì)告訴你這個(gè)卷實(shí)際掛載到了宿主機(jī)的哪個(gè)路徑,例如:
"Mountpoint":"/var/lib/docker/volumes/mydata/_data"
也就是說(shuō),你的數(shù)據(jù)其實(shí)是存在宿主機(jī)這個(gè)目錄下的。
四、DockerVolume存儲(chǔ)在哪?
默認(rèn)情況下,Docker會(huì)將Volume存儲(chǔ)在:
/var/lib/docker/volumes/卷名/_data/
你也可以用第三方存儲(chǔ)驅(qū)動(dòng)(如NFS、GlusterFS、Ceph等)把Volume存儲(chǔ)到遠(yuǎn)程服務(wù)器或分布式存儲(chǔ)系統(tǒng)。
五、如何共享Volume?
方式1:多個(gè)容器掛載同一個(gè)Volume
dockerrun-d--namecontainer1-vmydata:/app/databusyboxsleep3600dockerrun-d--namecontainer2-vmydata:/app/databusyboxsleep3600
兩個(gè)容器就可以共享/app/data目錄下的內(nèi)容了。
方式2:使用--volumes-from繼承掛載
dockerrun-d--namecontainer1-v/databusyboxdockerrun-d--namecontainer2--volumes-fromcontainer1busybox
適合某些場(chǎng)景下的依賴(lài)?yán)^承,比如日志采集、配置共享等。
六、Volume的清理
刪除未使用的卷
dockervolumeprune
刪除指定卷
dockervolumermmydata
??注意:如果卷還在使用中,刪除會(huì)失敗。
七、補(bǔ)充:VolumevsBindMount
總結(jié)一下
DockerVolume是實(shí)現(xiàn)容器數(shù)據(jù)持久化和共享的關(guān)鍵工具。掌握Volume,可以讓你:
保證數(shù)據(jù)不隨容器銷(xiāo)毀而丟失
實(shí)現(xiàn)多個(gè)容器的數(shù)據(jù)共享
更安全、便捷地管理容器生命周期中的數(shù)據(jù)
別再讓數(shù)據(jù)隨風(fēng)而去了,趕緊用Volume把數(shù)據(jù)穩(wěn)穩(wěn)托住吧!
十三本情節(jié)好評(píng)如潮的高分小說(shuō),讓讀者熱血沸騰,書(shū)荒不要錯(cuò)過(guò)!
說(shuō)起林沖無(wú)人不知,無(wú)人不曉,一身武藝出神入化,馬上功夫更是無(wú)人能及,可惜性格原因,導(dǎo)致后世百姓,對(duì)他的遭遇感到憋屈不已,連連稱(chēng)呼他為“天慫星”林沖!本是一代梟雄,為人耿直,恩怨分明,愛(ài)結(jié)交好友,武功非凡,俠肝義膽。要文有文,要武有武,要謀略有謀略,渾身是膽,做事卻優(yōu)柔寡斷,前怕狼后怕虎還有呢?
12本剛完結(jié)獵魔人小說(shuō),黑夜中守望黎明,浴血斬殺怪物,冒險(xiǎn)傳奇
“你爹的武魂是石甲豪豬,你娘的是九齒釘耙,說(shuō)不定你到時(shí)候覺(jué)醒武魂變異,變成手拿釘耙的豪豬,威武有力,橫掃戰(zhàn)場(chǎng),以后少爺就靠你了-?!眽m笑君調(diào)侃著小胖子——。“嘿嘿,那敢情好,借少爺吉言?!毙∨肿有πΑ!拔叶继婺阆牒昧?,變異武魂就叫天蓬元帥,豬類(lèi)武魂的元帥!”“………”小胖子沒(méi)回過(guò)神來(lái),問(wèn)道:..
小說(shuō):神奧冠軍想入火箭隊(duì)高層,挑戰(zhàn)眾高手,慘被團(tuán)滅!
爺爺父親拒絕教我冥想魂力,說(shuō)沒(méi)到六歲,覺(jué)醒之前禁止我修煉魂力,或者說(shuō)一切和魂力有關(guān)的技能都不能修煉,看來(lái)有我不知道的原因-。我這人一向聽(tīng)人勸,吃飽飯。本來(lái)還想能不能見(jiàn)識(shí)一下豬腳團(tuán)的風(fēng)采,結(jié)果……,老哥塵見(jiàn)君,死的時(shí)候108歲(漫畫(huà)98級(jí)),塵心72歲,大我那未出生的侄子36歲;塵心最終劍碎之時(shí),..
來(lái)源:紅網(wǎng)
作者:卓鯤
編輯:舜端雅
本文為紅辣椒評(píng)論 原創(chuàng)文章,僅系作者個(gè)人觀點(diǎn),不代表紅網(wǎng)立場(chǎng)。轉(zhuǎn)載請(qǐng)附原文出處鏈接和本聲明。