国产探花免费观看_亚洲丰满少妇自慰呻吟_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
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 藁城市| 乌兰察布市| 北京市| 郯城县| 上犹县| 昭觉县| 延边| 康保县| 金乡县| 汝南县| 淮北市| 汕尾市| 额尔古纳市| 天等县| 卓资县| 通江县| 九龙城区| 汶川县| 吉隆县| 历史| 滦平县| 临海市| 金溪县| 濮阳市| 宁国市| 普洱| 贺兰县| 牙克石市| 临沧市| 水城县| 江口县| 上虞市| 融水| 兴宁市| 灵丘县| 临清市| 会理县| 章丘市| 本溪市| 九江县| 兰坪|