国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Docker小白到實戰之容器數據卷,整理的明明白白

網絡 通信技術
默認情況下,容器內應用產生的數據都是由容器本身獨有,如果容器被刪除,對應的數據文件就會跟著消失。從隔離性的角度來看,數據就應該和容器共存亡。

[[419549]]

前言

上一篇把常用命令演示了一遍,其中也提到容器的隔離性,默認情況下,容器內應用產生的數據都是由容器本身獨有,如果容器被刪除,對應的數據文件就會跟著消失。從隔離性的角度來看,數據就應該和容器共存亡;但在實際用場景中,更多需要將數據持久化,即容器被刪除,數據也應該正常存在;另外也有很多場景需要容器之間共享數據,那該怎么做呢,接下來說說容器數據卷。

正文

1. 手動保存數據

通常手動有兩種方式,一是通過命令就行拷貝,二是將容器提交為鏡像。接下來通過拉取centos鏡像,運行演示

  • 通過命令形式

主機和容器之間可以通過命令進行數據拷貝,也就是說,在容器刪除之前可以先進行數據拷貝,如下:

命令簡述:docker run -it --name="mycentos" centos /bin/bash,直接根據鏡像centos以交互模式啟動容器,容器名稱為mycentos,在容器內部執行/bin/bash命令進入到終端;具體命令在Docker小白到實戰之常用命令演示,通俗易懂這篇文章中已經詳細說明;這里簡單回顧一下根據鏡像啟動容器流程,如圖:

上圖簡述:在Docker執行啟動命令時,會先從本地查找鏡像,如果沒有,就會去遠程倉庫搜索并拉取到主機,然后主機就可以根據鏡像啟動容器;如果遠程倉庫也沒有找到鏡像,那么就報錯。

好了,回到今天的話題,接著說拷貝數據;

現在通過centos鏡像啟動了一個容器(Linux系統),在上面創建一些文件進行測試,如下:

現在如果將容器刪除,里面對應的數據也會刪除,所以需要將對應的數據拷貝到主機上,如下:

docker cp bfb96a6afdbc:/usr/TestData /usr/TestDataHost命令解析:

  • 語法:docker cp SRC_PATH DEST_PATH
  • bfb96a6afdbc:/usr/TestData對應的就是SRC_PATH ,表示源頭,即需要拷貝的目錄或文件;bfb96a6afdbc這是容器ID,通過這種方式限定是某個容器內的數據文件;
  • /usr/TestDataHost對應的就是DEST_PATH,表示目標,即拷到什么地方;

按照上面的語法規則,同樣可以將主機上的數據文件拷貝到指定容器中,只是調換一下SRC_PATH 和DEST_PATH的位置即可,如下:

  • 將容器提交為鏡像的方式

這種方式只能勉強說是一種備份,只是通過docker commit命令將容器提交為鏡像,從而達到備份數據的作用;

但很明顯能感覺到不靈活,數據還是在容器內。關于docker commit命令上次已經說過,這里就不重復截圖啦。

以上兩種方式都不是很好的選擇,首先在時效上也不能及時備份,另外通過手動這種操作很明顯效率不高,還容易出錯;更重要的是苦了小伙伴們,所以必須把自動安排起來;手動這種方式,根據情況偶爾用用就可以啦。

2. 容器數據卷解放雙手

2.1 簡單理解容器數據卷

數據卷可以理解為目錄或文件,設計目的就是為了數據的持久化和共享;

掛載數據卷的容器,稱為數據卷容器;數據卷完全獨立于容器的生存周期,所以容器刪除時,對應掛載的數據卷不會被刪除。

通過將容器內的目錄掛載到主機上面,就可以讓數據實時同步,不管是主機改動,還是容器里有變動,都會同步更新。

2.2 實操演示

這里先用命令的方式進行演示,關于Dockerfile中的應用會在后續的章節中說到。

docker run命令中-v的選項在上次沒說,就是故意留到這里單獨分享;直接在啟動容器的時候掛載;語法主要有如下幾種方式:

  1. # 指定具體的主機路徑和容器內的路徑 
  2. docker run -v /宿主機路徑:容器內路徑 鏡像名   
  3. # 指定容器內的路徑,docker默認自動指定主機路徑 
  4. docker run -v 容器內路徑 鏡像名  
  5. # 指定容器內的路徑,并指定一個名字,主機路徑docker自動指定 
  6. docker run -v 卷名:容器內路徑 鏡像名  
  • 匿名掛載:在掛載時不指定名稱,會自動生成一個名稱

指定主機目錄

命令解析如下圖:

# docker run -it --name="容器名稱" -v 主機絕對路徑:容器絕對路徑 鏡像名稱

docker run -it --name="TestVolumeCentos" -v /usr/TestDataHost/DataVolumeTest:/usr/TestVolumeData centos

現在已經將容器內的目錄掛載到主機上,接下來感受一下數據同步:

圖片

通過上圖演示可以看到,不管是在主機還是在容器中修改數據,都能及時同步更新;容器停止之后,主機更新數據,容器再啟動,修改的數據也會同步到容器;容器刪除,掛載的數據不會被刪除,還是在主機中,這就是我們想要的。

可以通過docker inspect 容器命令查看容器的詳細信息,其中就有掛載卷的詳細信息,如下部分截圖:

不指定主機目錄

很多時候,我們不喜歡自己指定主機目錄,而是由Docker自動指定,所以通常我們只指定容器內目錄,如下:

看看Docker指定的主機路徑在哪,還是通過docker inspect 容器ID查看詳情,如下:

看看剛才在容器操作的文件數據是否同步過來:

默認情況,docker都會將掛載的主機目錄指定到如上圖的目錄中。

可以通過docker volume ls查看主機掛載的數據卷信息,如下:

通過上圖可以看到,名稱不直觀,看不懂,所以更多時候都會在掛載的時候指定一個名稱,即具名掛載。

  • 具名掛載:在掛載時指定一個名稱。

這里除了掛載的時候是指定名稱掛載,之后的操作和效果都一樣,這里就不重復截圖了;需要注意的是這種方式和指定主機的命令很像,指定路徑那種形式,冒號前面是路徑,如下:

2.3 容器間傳遞數據

數據卷其實還可以通過容器繼承方式進行掛載,從而實現容器之間的數據共享,如下:

關鍵命令解析:

  • 先啟動一個具名掛載的容器TestVolumesFromCentos,如下命令:
  1. docker run -it --name="TestVolumesFromCentos" -v testVolumesFrom:/usr/TestVolumeData centos 
  • 在啟動另一個容器TestVolumesFromCentos2,掛載卷繼承于TestVolumesFromCentos,如下命令:
  1. docker run -it --name="TestVolumesFromCentos2" --volumes-from TestVolumesFromCentos centos 

--volumes-from 后指定繼承于哪個容器。

現在不管在哪個容器中變更數據,都會實時同步到其他容器中,從而達成了容器數據的共享和實時同步。

通過docker inspect 容器ID看兩個容器的掛載詳情都一樣,截其中一個容器如下:

其實在指定掛載的時候還可以限制容器的操作權限,比如在容器內的掛載目錄下,可以限制容器內只讀或可讀寫,如下:

ro:代表只讀;

rw:代表讀寫;

好了,關于容器數據卷就說到這吧,是不是聽起來名字高大上,其實就是對文件或目錄的操作。

2.4 redis安裝實戰

關于Redis安裝在Docker中很簡單,直接執行命令即可,由于之前拉取過redis的鏡像,所以就直接啟動容器了,如果本地沒有鏡像,就會去遠程倉庫拉取。

上圖中可以看到,默認情況下,redis的鏡像將容器內的/data目錄掛載到這個主機上,而這個目錄就是redis數據存放的目錄,這樣就達到Redis的持久化。

對于Redis而言,很多時候需要修改配置文件,總不能每次修改都要到容器內更改,我們可以將配置文件放在已掛載的目錄中,然后指定啟動,也可以另外針對配置文件再加一個掛載,如下:

執行命令前,需要將配置文件提前放在主機的這個/usr/TestDataHost/redisconf目錄中。

  1. docker run -d -v /usr/TestDataHost/redisconf:/usr/local/etc/redis --name myredisconfigtest redis redis-server /usr/local/etc/redis/redis.conf 

通過docker inspect 容器看看掛載情況,如下:

通過掛載之后,如果需要修改配置文件,只需要在主機上修改配置文件內容即可。

總結

 

關于容器數據卷就說到這吧,對于容器是不是感覺很給力,既有隔離又有共享,滿足各種場景。

 

責任編輯:武曉燕 來源: Code綜藝圈
相關推薦

2010-09-06 17:35:03

PPPOE配置

2020-02-10 19:42:01

CPIP 協議,

2011-11-04 16:49:26

Action BarAndroid

2011-04-27 17:05:39

2012-02-20 21:59:08

無線路由設置

2010-10-08 15:05:00

無線路由設置

2020-12-22 10:57:36

DockerLinux程序員

2020-11-18 09:25:39

Docker

2021-09-30 09:59:23

OSPF網絡協議網絡技術

2021-02-23 08:10:18

Nginx反向代理負載均衡器

2010-08-03 09:17:00

2010-06-29 14:38:14

Linux服務器

2010-07-05 15:33:49

2021-09-26 07:38:39

組合問題數據結構算法

2010-09-09 09:52:03

Linux服務器

2010-10-15 10:01:19

無線網絡構建

2010-07-14 09:55:12

2010-08-25 09:09:58

2010-08-06 10:00:05

負載均衡

2013-05-23 11:16:28

大數據技術大數據AdTime
點贊
收藏

51CTO技術棧公眾號

日韩大陆av| 久久er精品视频| 欧美激情久久久久久| 国产精品探花在线| 亚洲精品一区二区精华| 五月天色综合| 国产精品久久999| 在线日韩中文| 日韩精品一区二区三区久久| 亚洲国内高清视频| 校园春色综合| 久久精品视频免费播放| 欧美视频在线观看| 国产欧美综合一区| 欧美日韩性视频| 日韩欧美中文字幕在线视频| 手机成人在线| 欧美日韩一区二区免费在线观看 | 91免费看片在线| 91视视频在线观看入口直接观看www| 中文日本在线观看| 国产精品99久久久久久人| av在线播放成人| 麻豆成全视频免费观看在线看| 亚洲最大福利网| 亚洲天堂久久久久久久| 国产亚洲精彩久久| 在线观看精品视频| 欧美精品久久一区二区三区| 99久久综合| 日本成本人片免费观看| 美女视频久久黄| 免费人成精品欧美精品 | 国内精品在线一区| 亚洲伊人伊色伊影伊综合网| 国产伦理一区| 亚洲一二区在线| 欧美日本国产一区| 亚洲色图网站| 久草网在线视频| 一本久久综合亚洲鲁鲁五月天| 欧美国产欧美综合| 影视一区二区| 免费高清完整在线观看| 久久久久久久久久久人体| 国产精品福利一区二区三区| 免费观看亚洲视频大全| 成年丰满熟妇午夜免费视频| 欧美日韩国产天堂| 91久久黄色| 色呦呦在线看| 女人帮男人橹视频播放| 国产欧美午夜| 青青草免费在线视频| 国产精品视频一区国模私拍| 亚洲综合一二区| 精品国产一区二区三区小蝌蚪 | 欧美日韩一级片在线观看| 久久国产成人午夜av影院宅| 国精产品999国精产品官网| 国产91成人在在线播放| 亚洲你懂的在线视频| 精品日韩免费| 三区在线视频| 成人综合色站| 欧美一激情一区二区三区| 久久一二三四| 在线免费av导航| 亚洲精品视频一二三| 亚洲变态欧美另类捆绑| 国产在线一区观看| 国产精品4hu.www| 日本成人中文字幕在线| 精品成人免费一区二区在线播放| 免费一级毛片在线观看| 亚洲一区美女视频在线观看免费| 欧美国产精品v| 清纯唯美亚洲经典中文字幕| 头脑特工队2在线播放| 狠狠色综合色区| 日韩精品福利在线| 福利一区二区在线| 老司机aⅴ在线精品导航| 亚洲成人中文字幕| 亚洲免费精彩视频| 91成人性视频| 亚洲午夜女主播在线直播| 精品日本高清在线播放| 久久综合久久综合久久| 国产成人av电影| 国产欧美一区二区精品忘忧草| 蜜桃av噜噜一区| 国产成人精品免费| 欧美男同视频网| 欧美一区影院| 激情亚洲另类图片区小说区| 精品欧美午夜寂寞影院| 欧美男男gaytwinkfreevideos| 亚洲美女久久| 成人福利免费在线观看| 国产成人一区| 国产成人在线中文字幕| sese在线视频| 成人免费无码av| 国产精品第七十二页| 亚洲成色www8888| 亚洲视频精选在线| 人人精品人人爱| 亚洲国产欧美国产第一区| 国内福利写真片视频在线| 亚洲欧美日韩不卡一区二区三区| 国产不卡av在线免费观看| 亚洲精品自产拍| 国内自拍欧美激情| 日本丰满少妇xxxx| 污视频网站在线免费观看| 一本大道香蕉久久| 成人午夜激情av| 久久99999| 91精品无人成人www| 色一情一乱一伦一区二区三区日本| 中文字幕成人一区| 视频一区二区综合| 成人一区二区免费视频| 丰满人妻中伦妇伦精品app| 九九热在线免费| 992tv成人国产福利在线| 日韩av免费观影| 小早川怜子影音先锋在线观看| 青草影视电视剧免费播放在线观看| 成人国产电影在线观看| 国产精品美女在线观看直播| 另类亚洲自拍| 亚洲精品一区二区妖精| 中文字幕中文乱码欧美一区二区| 精品众筹模特私拍视频| 日本中文字幕电影在线免费观看 | 香港日本韩国三级网站| 久久久久久999| 日韩一区二区三区免费看| 国产免费成人在线视频| 老司机精品导航| 欧美好骚综合网| 97超碰成人| 韩国精品主播一区二区在线观看| yw在线观看| 日韩av一卡二卡| 欧美一级淫片丝袜脚交| 男人天堂网站在线| 好男人免费精品视频| 成人看片在线观看| 久久人人88| 一区二区三区不卡视频在线观看| 精品视频9999| 丁香在线视频| 91欧美一区二区| 久久久久久麻豆| 亚洲欧美国产日韩中文字幕| 97在线国产视频| 波多野结衣在线观看一区二区三区| 色综合久久综合网97色综合| 五月天男人天堂| 免费观看久久av| 日韩欧美黄色影院| 能看的毛片网站| 亚洲理伦在线| 97人洗澡人人免费公开视频碰碰碰| h视频在线观看免费| 久久精品在线| 午夜婷婷国产麻豆精品| 国产精品福利在线观看| 日韩人妻一区二区三区蜜桃视频| 性欧美hd调教| 一区二区日韩欧美| 欧美亚洲免费在线一区| 亚洲一区二区中文在线| 欧美激情在线看| 久久精品亚洲乱码伦伦中文| 激情五月婷婷综合| 免费在线成人网| 日韩精品色哟哟| 久久精品一本| 免费成人你懂的| 狠狠干五月天| 成人av高清在线| 免费观看一级特黄欧美大片| 国产精品呻吟| 国产亚洲精品v| 免费视频一区二区三区在线观看| 影音先锋中文字幕一区二区| 亚洲二区免费| 噜噜噜91成人网| 日韩在线卡一卡二| 久久综合中文| 九色|91porny| 国产综合色产在线精品| 成人黄色大片在线观看| 91丨porny丨蝌蚪视频| 国产精品私人影院| 一区二区免费看|