Docker數(shù)據(jù)存儲總結
閱讀本文前,希望你已經對Volumes,Bind mounts和tmpfs mounts有了初步的了解,具體可以參考以下文章:
下圖展示了Volumes,Bind mounts和tmpfs mounts三種存儲技術的不同:
Volumes的使用場景
- 在多個容器間共享數(shù)據(jù)。
- 無法確保Docker主機一定擁有某個指定的文件夾或目錄結構,使用Volumes可以屏蔽這些宿主機差異。
- 當你希望將數(shù)據(jù)存儲在遠程主機或云提供商上。
- 當你希望備份,恢復或者遷移數(shù)據(jù)從一臺Docker主機到另一臺Docker主機,Volumes是更好的選擇。
Bind mounts的使用場景
- 在宿主機和容器間共享配置文件。例如將nginx容器的配置文件保存在宿主機上,通過Bind mounts掛載后就不用進入容器來修改nginx的配置了。
- 在宿主機和容器間共享代碼或者build輸出。例如將宿主機某個項目的target目錄掛載到容器中,這樣在宿主機上Maven build出一個最新的產品,可以直接咋i容器中運行,而不用生成一個新的鏡像。
- Docker主機上的文件或目錄結構是確定的
tmpfs mounts的使用場景
- 當你因為安全或其他原因,不希望將數(shù)據(jù)持久化到容器或宿主機上,那你可以使用tmpfs mounts模式。
Bind mounts和Volumes行為上的差異
- 如果你將一個空Volume掛載到一個非空容器目錄上,那么這個容器目錄中的文件會被復制到Volume中,即容器目錄原有文件不會被Volume覆蓋。
- 如果你使用Bind mounts將一個宿主機目錄掛載到容器目錄上,此容器目錄中原有的文件會被隱藏,從而只能讀取到宿主機目錄下的文件。
參考文章
https://docs.docker.com/storage/#good-use-cases-for-tmpfs-mounts
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
相關文章
Docker自定義JDK鏡像并拉取至阿里云鏡像倉庫超詳細攻略
Docker倉庫是集中存放鏡像的地方,分為公共倉庫和私有倉庫,這篇文章主要給大家介紹了關于Docker自定義JDK鏡像并拉取至阿里云鏡像倉庫的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-08-08解決docker報錯:docker:invalid?reference?format.
在導入鏡像的時候出現(xiàn)問題:invalid reference format,這里總結下,這篇文章主要給大家介紹了關于解決docker報錯:docker:invalid?reference?format的相關資料,需要的朋友可以參考下2024-01-01詳解使用export/import導出和導入docker容器
本篇文章主要介紹了詳解使用export/import導出和導入docker容器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-07-07kubernetes1.5.2升級到kubernetes1.10一些主要的設定修改記錄
今天小編就為大家分享一篇關于kubernetes1.5.2升級到kubernetes1.10一些主要的設定修改記錄,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12