在docker中,掛載能夠用本機檔案或資料夾覆蓋容器內的檔案或資料夾,檔案掛載不會對同一資料夾下的其他檔案產生任何影響,能夠實現宿主機和容器目錄的雙向資料自動同步。
本教學操作環境:linux7.3系統、docker-1.13.1版、Dell G3電腦。
docker掛載就是用本機檔案或資料夾覆蓋容器內的檔案或資料夾
註:docker 掛載設定檔時,一定要注意不要把要掛載的設定檔的內容寫錯,否則在創建容器之後,啟動不了
背景介紹
docker volume 可以使我們在啟動docker容器時,動態的掛載一些檔案(如設定檔), 以覆寫鏡像中原有的檔案
#資料夾掛載
host上資料夾一定會覆寫container中資料夾:
允許不存在的資料夾或存在的空白資料夾掛載進container, container中對應的資料夾將被清空
#非空資料夾掛載進container將會覆寫container中原有資料夾
檔案掛載
檔案掛載與資料夾掛載最大的不同點在於:
docker 禁止以主機上不存在的檔案掛載到container中已經存在的檔案
檔案掛載不會對同一資料夾下的其他檔案產生任何影響
存在的檔案掛載進container中將會覆寫container中對應的文件, 若檔案不存在則新建
總結
host上檔案一定會覆寫container中檔案
應用場景
從上面的分析可知,資料夾掛載以整個資料夾為單位進行檔案覆蓋,故可在需要將大量檔案掛載進container時使用,另外,如果掛載一個空資料夾或不存在的資料夾,一般是做逆向使用: 即容器啟動後,可能會在容器內掛載點的資料夾下產生一些檔案(如日誌),此時,在對應的host上的資料夾內就能直接看到。
文件掛載由於只會覆蓋單個文件而不會影響container中同一資料夾下的其他文件,常常被用來掛載配置文件,以在運行時,動態的修改預設配置。
推薦學習:《docker影片教學》
以上是docker掛載有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!