亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

利用Volume在主機和Docker容器文件傳輸的方法

2024-09-01 13:56:40
字體:
來源:轉載
供稿:網友

之前寫過一篇關于Docker容器和本機之間的文件傳輸。的文章,但是此方法相對比較繁瑣一些,在查看了官方關于數據管理的文檔之后發現利用volume來實現主機和容器的文件傳輸效率更高一點,其實也就是將本地的目錄進行掛載到容器上,官方一共有三種方法:Manage data in Docker, 

這里只介紹使用volume的操作:Use volumes

1.使用Volume在主機和容器之間傳輸文件。

在官方文檔中可以看到使用如下命令即可創建一個volume:

Create a volume:

$ docker volume create my-vol

注意這個命令不是所有的docker版本都可以運行的:

The client and daemon API must both be at least 1.21 to use this command. Use the docker version command on the client to check your client and daemon API versions.

Volume,主機,Docker,文件傳輸

創建完成之后可以查看詳細信息:

$ docker volume inspect my-vol

Volume,主機,Docker,文件傳輸

注意這個Mountpoint所對應的目錄就是我們用來主機和容器進行文件傳輸的目錄。

然后在使用run啟動一個容器的時候就可以使用該volume:

Volume,主機,Docker,文件傳輸

可以看到通過-v命令將剛才創建的數據卷掛載到容器中的hostdata目錄下了,這時候我們在容器中給hostdata目錄下添加文件的時候,在主機的的/var/lib/docker/volumes/my-vol/_data中就可以看到了,同理在主機的該目錄中添加文件,在容器的hostdata中也可以看到。

我將nginx這個文件復制到主機中用來交換的目錄下,進入容器之后在hostdata的目錄下也可以查看:

Volume,主機,Docker,文件傳輸

同樣的在容器中將文件拷貝到hostdata目錄下中,在主機的/var/lib/docker/volumes/my-vol/_data也能夠使用查看。

在這里我在容器中創建一個文件testfile并向其中寫入:This is container write!,然后回到主機進行查看,并在主機中使用vim向其中添加:“This is host write!”,并返回容器中進行查看。

Volume,主機,Docker,文件傳輸

2.使用數據卷容器。

我在有些地方看到有人使用數據卷容器來實現多個容器之間的數據共享,其過程是這樣子的:

1.先創建一個數據卷容器dbdata,并在其中創建一個數據卷掛載到/bdata:

Volume,主機,Docker,文件傳輸

可以通過docker volume ls查看生成了一個隨機名稱的volume。

2.然后,可以在其他容器中使用–volumes-from來掛載dbdata容器中的數據卷,例如創建db1和db2兩個容器,并從dbdata容器掛載數據卷:

Volume,主機,Docker,文件傳輸

3.然后此時在三個容器中任何一方在/dbdata目錄下的寫入,其他容器中都可以看到。

Volume,主機,Docker,文件傳輸

在圖中,在dbdata容器中創建testfile文件并寫入”dbdata container write!”,然后在db1容器中查看并寫入“db1 container write!”,然后在db2容器中查看并寫入“da2 container write!”,最后回到dbdata容器中查看。

4.然后還可以通過多個–volumes-from來掛載多個數據卷,然后還給出了備份和恢復的方法,網上一搜一大把。

3.為什么不用數據卷容器?

在看到許許多多關于數據卷容器的文章,并且都是大同小異。然后我想了想發現并沒有使用數據卷的必要性(或許是我想的不夠周全)。

上面提到數據卷容器用來在多個容器中共享數據,但是在明明可以通過掛載一個相同的本地目錄就能實現該方法。比如說在第一步中創建的my-vol數據卷,我可以將其同時掛載到db3和db4容器中。

Volume,主機,Docker,文件傳輸

在圖中,我將my-vol數據卷掛載到了db3和db4中,然后在其中能夠找到之前的數據文件,并且在db4容器中對testfile文件進行寫入操作,在db3中容器中也可以查看。

那么也就是說,我同樣的可以通過掛載一個數據卷就可以實現多個容器中的數據共享,并且在主機的目錄中添加的文件,在所有的容器中也能夠查看。如果備份的話直接在主機本地將文件夾進行拷貝即可,豈不是更方便。

4.為什么使用數據卷容器?

但是數據卷容器還有一個作用比較不錯,那就是可以用來指定掛載本地目錄,在第一點中我們創建一個名為my-vol的數據卷,該數據卷在本地存放的目錄為:/var/lib/docker/volumes/my-vol/_data,可以看出這個名字很長不方便操作,可以通過數據卷容器來解決該問題。

比如我在主機上創建了一個專門用來存放主機和容器進行文件交互的目錄,也就是說以后我想給容器中傳輸什么文件了,我直接將文件拷貝到該目錄下即可:

Volume,主機,Docker,文件傳輸

我在官方文檔中并沒有發現使用docker volume create 創建數據卷時可以指定volume對應的本地目錄的命令(或許是我看的不夠多)。

但是我就是想要用/usr/local/datadb 這個目錄該怎么辦?此刻數據卷容器的作用就出來了,可以通過創建一個數據卷容器,并且將該目錄掛在到數據卷容器上即可:

Volume,主機,Docker,文件傳輸

在圖中,我創建了一個所謂的數據卷容器,并且使用-v參數,將剛才主機的/usr/local/datadb目錄掛載進去,然后在容器中創建文件testfile并寫入“HAHAHAHA”,在主機上進行查看。

然后在其他容器創建的時候既可以使用–volumes-from將該數據卷容器進行掛載,然后想給容器中傳文件的時候直接拷貝到/usr/local/datadb目錄下即可,反過來容器給主機傳文件直接拷貝到容器中的掛載目錄下即可。

至于備份,直接將主機/usr/local/datadb賦值一份就好了,恢復的話再次掛載就好了。

但有一個問題就是,上述所有的掛載volume操作都是使用run命令新建了一個容器,至于能不能直接給運行中的容器進行掛載,我查了半天只有一個是關于這個的,但是我也沒有考證,有興趣的可以看下:http://www.49028c.com/fuwuqi/344850.html

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日本伊人精品一区二区三区介绍| 久久国产视频网站| 亚洲第一网站男人都懂| 91色精品视频在线| 北条麻妃久久精品| 国产精品激情av电影在线观看| 亚洲国产精品资源| 国产精品亚洲美女av网站| 欧美日本高清一区| 日韩高清电影好看的电视剧电影| 欧美精品第一页在线播放| 欧美最猛性xxxxx免费| 欧美中文在线视频| 一区二区三区 在线观看视| 欧美极品少妇xxxxⅹ喷水| 亚洲一区二区三区777| 亚洲变态欧美另类捆绑| 日韩免费电影在线观看| 91色精品视频在线| 成人免费福利视频| 国产精品爽黄69| 国语自产精品视频在线看一大j8| 一二美女精品欧洲| 精品色蜜蜜精品视频在线观看| 久久激情五月丁香伊人| 5566日本婷婷色中文字幕97| 亚洲国产欧美一区| 日本精品免费一区二区三区| 成人免费在线视频网址| 国产精品狼人色视频一区| 原创国产精品91| 大桥未久av一区二区三区| 亚洲999一在线观看www| 亚洲欧美国产精品专区久久| 久久精品久久精品亚洲人| 97超级碰在线看视频免费在线看| 中文字幕一区二区三区电影| 国产三级精品网站| 97人洗澡人人免费公开视频碰碰碰| 国产精品一区二区三区毛片淫片| 国内伊人久久久久久网站视频| 国内精品模特av私拍在线观看| 久久在线免费视频| 亚洲97在线观看| 国产精品白丝jk喷水视频一区| 欧美激情在线有限公司| 91日本在线观看| 久久综合亚洲社区| 中文.日本.精品| 亚洲精品99999| 欧美激情精品久久久久久蜜臀| 国产精品视频资源| 日本高清不卡在线| 亚洲va国产va天堂va久久| 国产日韩精品一区二区| 国产精品手机播放| 精品网站999www| 国产精品永久免费| 欧美在线视频观看免费网站| 欧美国产日本高清在线| 国产精品∨欧美精品v日韩精品| 日本国产精品视频| 日韩综合视频在线观看| 91麻豆桃色免费看| 热re99久久精品国产66热| 国产精品久久久久久久久久久久| 91久久国产综合久久91精品网站| 亚洲自拍中文字幕| 欧美国产精品va在线观看| 2021久久精品国产99国产精品| 欧美专区中文字幕| 久久综合久久美利坚合众国| 亚洲网址你懂得| 亚洲最大福利视频| 欧美精品在线网站| 国产精品久久久久免费a∨| 中文字幕一区日韩电影| 久久久久日韩精品久久久男男| 亚洲精品视频在线观看视频| 国产亚洲精品久久久| 亚洲已满18点击进入在线看片| 尤物精品国产第一福利三区| 亚洲在线免费观看| 国产丝袜精品第一页| 国产欧美亚洲精品| 欧美一级免费视频| 国产美女扒开尿口久久久| 在线看福利67194| 日韩av在线免费看| 欧美最猛性xxxx| 国产成人亚洲综合| 国产美女搞久久| 中文字幕视频在线免费欧美日韩综合在线看| 91亚洲精品久久久| 激情久久av一区av二区av三区| 亚洲国产成人精品一区二区| 精品国产一区二区三区久久| 久久久久久中文字幕| 中文字幕一精品亚洲无线一区| 亚洲欧美日韩国产成人| 欧美成人精品不卡视频在线观看| 午夜精品久久久久久99热软件| 免费91麻豆精品国产自产在线观看| 欧美成人免费在线观看| 韩国国内大量揄拍精品视频| 国内精品视频在线| 日本老师69xxx| 欧美在线欧美在线| 欧美性做爰毛片| 欧美精品激情视频| 欧美日本亚洲视频| 亚洲iv一区二区三区| 欧美激情xxxxx| 日韩精品在线观看网站| 久久久精品视频成人| 亚洲男人的天堂在线播放| 97色在线播放视频| 久久精品电影网| 日韩电影第一页| 亚洲精品第一国产综合精品| 97久久精品人搡人人玩| 高清欧美性猛交xxxx黑人猛交| 亚洲在线观看视频| 91视频国产精品| 国产精品av在线| 国产在线一区二区三区| 2019中文字幕在线免费观看| 久久国产精品电影| 欧美一区亚洲一区| 97精品视频在线播放| 伊人久久久久久久久久久久久| 欧美另类极品videosbestfree| 久久久这里只有精品视频| 日韩精品高清视频| 亚洲天堂视频在线观看| 国产精品久久99久久| 精品久久久久久久久国产字幕| 国产欧美日韩中文字幕在线| 亚洲色在线视频| 国产91精品青草社区| 日韩在线中文字幕| 在线视频欧美日韩精品| 日韩一区二区在线视频| 国产主播精品在线| 欧美日韩一区二区免费在线观看| 日韩成人在线播放| 精品久久久久久| 亚洲国产精品系列| 国产精品中文久久久久久久| 亚洲免费av片| 色多多国产成人永久免费网站| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲电影中文字幕| 国内精品一区二区三区| 欧美亚洲另类制服自拍| 欧美日韩免费在线| 欧美在线国产精品| 日韩欧美极品在线观看| 欧美激情视频在线观看| 91精品国产亚洲| 国产精品成久久久久三级| 日韩亚洲欧美中文高清在线| 97人人爽人人喊人人模波多| 久久青草精品视频免费观看|