国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

Docker中容器數據卷(Data Volume)和數據管理詳解

2019-11-02 16:03:46
字體:
來源:轉載
供稿:網友

卷(Volume)

眾所周知卷(Volume)是容器中的一個數據掛載點,卷可以繞過聯合文件系統,從而為Docker 提供持久數據,所提供的數據還可以在宿主機-容器或多個容器之間共享。通過卷,我們可以可以使修改數據直接生效,而不必重新構建鏡像。

一、數據卷

數據卷是一個可以繞過聯合文件系統的,專門指定的可在一或多個容器間共享目錄。卷為提供為持久化或共享數據提供了一些有用的特性。

數據卷設計的初哀是提供持久化數據,而與容器的生命周期無關。因此,在刪除容器時,Docker不會自動刪除卷,直到沒有容器再引用。

1.1 添加數據卷

可以在docker createdocker create命令創建容器時,通過-v參數為容器添加數據卷。-v參數參數可以多次使用,以添加多個數據卷。

如,可以像下面這樣為容器添加一個卷:

$ sudo docker run -t -i -v /home/test --name test itbilu/test /bin/bash

這樣就會在容器內/webapp位置創建一個卷。

除了在創建容器時添加數據卷外,還可以通過Dockerfile文件中通過Volume指令添加,Volume可以多次使用以添加多個數據卷。

說明:本文中使用的示例鏡像(itbilu/test)通過以下Dockerfile文件創建:

# Version: 0.0.3FROM ubuntu:16.04MAINTAINER 何民三 "cn.liuht@gmail.com"RUN apt-get updateRUN apt-get install -y nginxRUN echo 'Hello World, 我是個容器' /  > /var/www/html/index.htmlRUN mkdir /home/itbilu/ENV ITBILU_PATH /home/itbilu/VOLUME [$ITBILU_PATH]EXPOSE 80

1.2 卷位置

添加卷后,可以通過docker inspect來查看數據卷在容器中的位置:

$ sudo docker inspect test

docker inspect可以用來查看容器或鏡像的詳細配置信息。可以在容器的Mounts節點下,查看容器的卷信息:

..."Mounts": [{ "Type": "volume", "Name": "5f869c580c06e6079b0de2c5ce682c1c9467286c76b506703d87bf11d1271c24", "Source": "/var/lib/docker/volumes/5f869c580c06e6079b0de2c5ce682c1c9467286c76b506703d87bf11d1271c24/_data", "Destination": "/home/test", "Driver": "local", "Mode": "", "RW": true, "Propagation": ""},{ "Type": "volume", "Name": "e4fd6c3a91ba2e03b14cf174c2023f366abbe9f2f73ca07e6bac223f68e47773", "Source": "/var/lib/docker/volumes/e4fd6c3a91ba2e03b14cf174c2023f366abbe9f2f73ca07e6bac223f68e47773/_data", "Destination": "[/home/itbilu/]", "Driver": "local", "Mode": "", "RW": true, "Propagation": ""}],...

在以上示例中,有兩個掛載卷,一個是在docker run創建容器時創建的,而另一個是在創建運行容器鏡像的Dockerfile文件中通過VOLUME指令創建。其中,Source表示宿主機源文件位置,Destination表示數據卷在容器中的掛載位置,而RW表示卷是否可讀/寫。

1.3 掛載本地數據到容器數據卷

在前面示例中,我們運行容器時并沒有指定要掛載到容器中數據卷的本地目錄,所在Docker使用一個默認數據目錄。 -v參數除了可以在容器中創建數據卷外,還可以將宿主機中的目錄掛載到容器中的數據卷。

如,運行容器,并將本地的~/code/itbilu目錄掛載到容器的/home/itbilu數據卷上:

$ sudo docker run -t -i -v ~/code/itbilu:/home/itbilu --name test itbilu/test /bin/bas
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 锦州市| 宁阳县| 株洲县| 霍山县| 诸暨市| 华安县| 思茅市| 军事| 莫力| 铜鼓县| 许昌市| 临桂县| 台州市| 锡林浩特市| 饶平县| 遂昌县| 丰县| 那曲县| 龙泉市| 保靖县| 岳池县| 宁安市| 长沙县| 富民县| 承德市| 马边| 呼伦贝尔市| 华坪县| 龙山县| 霍林郭勒市| 天气| 伊通| 珠海市| 元氏县| 道孚县| 饶河县| 监利县| 桂东县| 衡东县| 饶河县| 康马县|