最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker 數(shù)據卷,數(shù)據卷容器詳細介紹

 更新時間:2016年11月21日 10:38:55   作者:bugall  
這篇文章主要介紹了 Docker 數(shù)據卷,數(shù)據卷容器詳細介紹的相關資料,這里對Docker 數(shù)據卷,數(shù)據卷容器的感念及相關操作進行了介紹,需要的朋友可以參考下

Docker 數(shù)據卷,數(shù)據卷容器詳細介紹

引子

有些時候,我們的服務運行時必不可少的會產生一些日志,或是我們需要把容器內的數(shù)據進行備份,甚至多個容器之間進行數(shù)據共享,這必然涉及容器的數(shù)據管理操作。

容器中管理數(shù)據主要有兩種方式:

數(shù)據卷
數(shù)據卷容器

數(shù)據卷是一個可供容器使用的特殊目錄,它繞過文件系統(tǒng),可以提供很多有用的特性:
- 數(shù)據卷可以在容器之間共享和重用
- 對數(shù)據卷的修改會立馬生效
- 對數(shù)據卷的更新,不會影響鏡像
- 卷會一直存在,直到沒有容器使用

#(類似linux下的掛載(mount))

創(chuàng)建數(shù)據卷

在用Docker run 命令的時候,使用-v參數(shù)標記可以在容器內創(chuàng)建一個數(shù)據卷,多次使用-v標記可以創(chuàng)建多個數(shù)據卷

docker run -dp --name web -v /webapp ubuntu:14.04
#這里我們沒有-p后,并沒有制定端口,如果我們不制定容器與宿主機之間映射的端口關系的話,Docker會隨意映射

掛載一個主機目錄作為數(shù)據卷
使用-v標記也可以指定掛載一個本地的已有目錄到容器中去作為數(shù)據卷

docker run -dp --name web -v /src/webapp:/opt/webapp ubuntu:1404

上面這條命令加載主機/src/webapp目錄到容器的/opt/webapp目錄:

這個功能在進行測試的時候十分方便,比如用戶可以放置一些程序或數(shù)據到本地目錄中,然后在容器內運行和使用。另外,本

地目錄的路徑必須是絕對路徑,如果目錄不存在,Docker會自動創(chuàng)建。

Docker掛載數(shù)據卷的默認權限是讀寫,用戶也可以通過,ro指定只讀:

docker run -dp --name web -v /src/webapp:/opt/webapp:ro ubuntu:14.04
# 加了:ro之后,容器內掛載的數(shù)據卷的數(shù)據就無法修改。

掛載本機文件為數(shù)據卷

-v標記也可以從主機掛載單個文件到容器中作為數(shù)據卷:

Docker run --rm -it -v ~/.bash_history:/.bash_history ubuntu:14.04
# 這樣就可以記錄在容器輸入過的命令歷史(不同shell版本有所不同)

數(shù)據卷容器

如果用戶需要在容器之間共享一些持續(xù)更新的數(shù)據,最簡單的方式是使用數(shù)據卷容器,數(shù)據卷容器其實是一個普通的容器,專門用來提供數(shù)據卷供其它容器掛載。
首先,創(chuàng)建一個數(shù)據卷容器dbdata,并在其中創(chuàng)建一個數(shù)據卷掛載到/dbdata:

docker run -ti -v /dbdata --name dbdata ubuntu:14.04

接著我們可以在其他容器中使用–volumes-form來掛載dbdata容器中的數(shù)據卷,例如創(chuàng)建db1和db2兩個容器,并從dbdata容器掛載數(shù)據卷:

docker run -ti --volumes-from dbdata --name db1 ubuntu:14.04
docker run -ti --volumes-from dbdata --name db2 ubuntu:14.04

此時容器db1和db2都掛載同一個數(shù)據卷到相同的/dbdata目錄。三個容器任何一方在該目錄下的寫入,其他容器都可以看到。

例如,在dbdata容器中創(chuàng)建一個test文件:

root@df392e32f0p6:/# touch test1
root@df392e32f0p6:/#ls
test

我們在db1容器中查看它:

docker run -ti --volumes-from dbdata --name db1 ubuntu:14.04
root@92597e32f0p6:/# ls dbdata/
test

我們可以多次使用–volumes-from參數(shù)來從多個容器掛載多個數(shù)據卷。還可以從其他已經掛載了容器卷的容器來掛載數(shù)據卷:

docker run -d --name db3 --volumes-from db1 ubuntu:14.04
#注意:使用--volumes-from參數(shù)所掛載數(shù)據卷的容器自身并不需要保持在運行狀態(tài)

如果刪除了掛載的容器(包括dbdata,db1 和 db2),數(shù)據卷并不會被自動刪除。如果要刪除一個數(shù)據卷,必須在刪除最后一個還掛載著它的容器時顯式使用Docker rm -v命令來指定同時刪除關聯(lián)的容器。

使用數(shù)據卷容器可以讓用戶在容器之間自由的升級和移動數(shù)據卷。

利用數(shù)據卷容器遷移數(shù)據

可以利用數(shù)據卷容器對其中的數(shù)據卷進行備份,回復,以實現(xiàn)數(shù)據的遷移。

備份

docker run --volumes-from dbdata -v $(pwd):/backup --name worker ubuntu:14.04 tar cvf /backup/backup.tar /dbdata

這個命令有點復雜,我們來看下這條命令都做了哪寫操作

1.首先利用ubuntu鏡像創(chuàng)建了一個容器worker。
2.使用–volumes-from dbdata參數(shù)來讓worker容器掛載dbdata容器的數(shù)據卷(即dbdata數(shù)據卷);
3.使用-v $(pwd):/backup參數(shù)來掛載本地的當前目錄到worker容器的/backup目錄

worker容器啟動后,使用了tar cvf /backup/backup.tar /dbdata命令來將/dbdata下內容備份為容器內的/backup/backup.tar,即宿主主機當前目錄下的backup.tar。

恢復

如果要恢復數(shù)據到一個容器,可以按照下面的操作,首先創(chuàng)建一個帶有數(shù)據卷的容器dbdata2:

docker run -v /dbdata --name dbdata2 ubuntu:14.04

然后創(chuàng)建另一個新的容器,掛載dbdata2的容器,并使用ubtar解壓備份文件到所掛載的容器卷中即可:

docker run --volumes-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • docker如何刪除<none>/dangling/懸空鏡像

    docker如何刪除<none>/dangling/懸空鏡像

    這篇文章主要介紹了docker如何刪除<none>/dangling/懸空鏡像問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 解決docker pull鏡像速度慢的問題的方法

    解決docker pull鏡像速度慢的問題的方法

    本篇文章主要介紹了解決docker pull鏡像速度慢的問題的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11
  • 對已有的docker容器增加新的端口映射問題(兩種方式)

    對已有的docker容器增加新的端口映射問題(兩種方式)

    這篇文章主要介紹了對已有的docker容器增加新的端口映射,在運行容器時指定映射端口運行后,如果想要添加新的端口映射,使用兩種方式都可以,需要的朋友可以參考下
    2022-01-01
  • docker安裝Portainer CE的實現(xiàn)示例

    docker安裝Portainer CE的實現(xiàn)示例

    Portainer是一款易用的開源容器管理工具,適合各級經驗的Docker用戶,它提供直觀的UI,方便管理、部署和監(jiān)控容器,本文就來介紹一下docker安裝Portainer CE的實現(xiàn)示例,感興趣的可以了解一下
    2024-09-09
  • Docker容器編排實現(xiàn)過程解析

    Docker容器編排實現(xiàn)過程解析

    這篇文章主要介紹了Docker容器編排實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • Docker compose 編排工具詳解

    Docker compose 編排工具詳解

    Compose是一個用于定義和運行多容器Docker應用程序的工具。使用Compose,您可以使用Compose文件來配置應用程序的服務。然后,使用單個命令,您可以從配置中創(chuàng)建并啟動所有服務
    2021-09-09
  • docker安裝nginx實現(xiàn)對springboot項目的負載均衡的操作方法

    docker安裝nginx實現(xiàn)對springboot項目的負載均衡的操作方法

    這篇文章主要介紹了docker安裝nginx實現(xiàn)對springboot項目的負載均衡的操作方法,本文給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • docker自定義鏡像構建php7的方法

    docker自定義鏡像構建php7的方法

    這篇文章主要介紹了docker自定義鏡像構建php7的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • 基于Docker搭建Redis主從集群的實現(xiàn)

    基于Docker搭建Redis主從集群的實現(xiàn)

    本文基于Docker+Redis5.0.5版本,通過cluster方式創(chuàng)建一個6個redis實例的主從集群,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • docker?部署?時序數(shù)據庫TDengine的思路詳解

    docker?部署?時序數(shù)據庫TDengine的思路詳解

    TDengineGUI是一個基于electron構建的,針對時序數(shù)據庫TDengine的圖形化管理工具,這篇文章主要介紹了docker?部署?時序數(shù)據庫TDengine的思路詳解,需要的朋友可以參考下
    2025-04-04

最新評論

新竹县| 民和| 申扎县| 庄河市| 陵川县| 麦盖提县| 铜陵市| 麻江县| 普格县| 武川县| 桃江县| 淮安市| 屯留县| 平江县| 蒙阴县| 当雄县| 阿图什市| 名山县| 渭南市| 印江| 三门县| 商南县| 岳阳县| 叙永县| 蒙城县| 肥城市| 乌海市| 孝感市| 喀喇沁旗| 延长县| 集贤县| 康保县| 松滋市| 广汉市| 金平| 福安市| 白银市| 大宁县| 池州市| 东台市| 鹤峰县|