摘要:下面創建一個名為的容器,并加載一個數據卷到容器的目錄。如果需要在刪除容器的同時移除數據卷。
容器內部以及容器之間的數據管理是怎么樣進行的?
其實在 Docker 內部以及容器之間管理數據,在容器中管理數據主要有兩種方式:
數據卷(Volumes)
掛載主機目錄 (Bind mounts)
數據卷數據卷是一個可供一個或多個容器使用的特殊目錄,它繞過 UFS,可以提供很多有用的特性:
數據卷可以在容器之間共享和重用
對數據卷的修改會立馬生效
對數據卷的更新,不會影響鏡像
數據卷默認會一直存在,即使容器被刪除
注意: 數據卷 的使用,類似于 Linux 下對目錄或文件進行 mount,鏡像中的被指定為掛載點的目錄中的文件會隱藏掉,能顯示看的是掛載的 數據卷 。
既然數據卷可以對容器的數據進行管理,那么該怎么去創建和使用數據卷呢?
數據卷操作 創建數據卷可以通過命令docker volume create 數據卷的名稱來創建一個數據卷,如:
從上圖中可以看出我們創建的數據卷my-vol已經存在了。
然后可以通過docker volume create 數據卷的名稱來查看具體的某個數據卷的信息,如:
在用 docker run 命令的時候,使用 --mount 標記來將 數據卷 掛載到容器里。在一次 docker run 中可以掛載多個 數據卷 。下面創建一個名為 web 的容器,并加載一個 數據卷 到容器的 /webapp 目錄。
docker run -d -P --name web # -v my-vol:/wepapp --mount source=my-vol,target=/webapp training/webapp python app.py查看數據卷的具體信息
在主機里使用以下命令可以查看 web 容器的信息
$ docker inspect web
數據卷 信息在 "Mounts" Key 下面
"Mounts": [ { "Type": "volume", "Name": "my-vol", "Source": "/var/lib/docker/volumes/my-vol/_data", "Destination": "/app", "Driver": "local", "Mode": "", "RW": true, "Propagation": "" } ],刪除數據卷
docker volume rm my-vol
數據卷 是被設計用來持久化數據的,它的生命周期獨立于容器,Docker 不會在容器被刪除后自動刪除 數據卷 ,并且也不存在垃圾回收這樣的機制來處理沒有任何容器引用的 數據卷 。如果需要在刪除容器的同時移除數據卷。可以在刪除容器的時候使用 docker rm -v 這個命令。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27904.html
摘要:描述數據庫服務器鏡像,此容器映像包含用于的數據庫服務器和一般用法。用戶可以選擇和基于的圖像。然后鏡像可以在上以的形式獲得。 描述 MySQL 5.6 SQL數據庫服務器Docker鏡像,此容器映像包含用于OpenShift的MySQL 5.6 SQL數據庫服務器和一般用法。用戶可以選擇RHEL和基于CentOS的圖像。然后CentOS鏡像可以在Docker Hub上以centos / ...
摘要:是官方三劍客項目之一,提供容器集群服務,是官方對容器云生態進行支持的核心方案。工作節點是任務執行節點,管理節點將服務下發至工作節點執行。 Docker Swarm 是 Docker 官方三劍客項目之一,提供 Docker 容器集群服務,是 Docker 官方對容器云生態進行支持的核心方案。使用它,用戶可以將多個 Docker 主機封裝為單個大型的虛擬 Docker 主機,快速打造一套容...
閱讀 720·2021-11-24 10:30
閱讀 1254·2021-09-24 09:48
閱讀 3074·2021-09-24 09:47
閱讀 3588·2019-08-29 17:11
閱讀 2875·2019-08-29 15:38
閱讀 2270·2019-08-29 11:03
閱讀 3594·2019-08-26 12:15
閱讀 1008·2019-08-26 10:45