1. 程式人生 > 其它 >「Docker學習系列教程」9-Docker容器資料卷介紹

「Docker學習系列教程」9-Docker容器資料卷介紹

通過前面8篇文章的學習,我們已經學會了docker的安裝、docker常用的命令已經docker映象修改後提交的遠端映象倉庫及提交到公司的私服倉庫中。接下來,我們再來學學Docker另外一個重要的東西-容器資料卷。

我們先來看看一個場景:我們有多個docker容器需要使用到同一個資料,比如說A服務和B服務都需要使用到資料庫D,在資料庫容器D銷燬後,重啟,資料庫中的資料不能夠丟失。我們通過前面的學習已經知道了,容器如果被銷燬後再重啟,這個時候,容器中的原有資料就丟失了,那麼這種情況下,資料庫容器D中儲存的資料應該放在哪裡?容器自身?如果存在容器自身肯定不行,那如果存放在非容器中,那麼在容器中怎麼能訪問到?能不能像Linux一樣,可以直接掛載碟符呢?答案是肯定有的。就是本文介紹的Docker容器資料卷。好了,接下來,咱們就來開始學習這個。

大家好,我是凱哥Java(kaigejava),樂於分享,每日更新技術文章,歡迎大家關注“凱哥Java”,及時瞭解更多。讓我們一起學Java。也歡迎大家有事沒事就來和凱哥聊聊~~~

直通車,本系列教程已釋出文章,快速到達,《Docker學習系列》教程已經發布的內容見章末哦~

先填坑:容器卷記得加入以下引數:

--privileged-true

為什麼需要加這個呢?

回顧下啟動私服命令:

docker run -d -p 5000:5000 -v /n/myregistry/:/tmp/registry --privileged=true registry

其中 -v 後面的是什麼?

-v:新增自定義的容器卷

冒號左邊:宿主機的路徑(docker的路徑==>也就是凱哥的虛擬機器中的路徑)

冒號右邊:容器內的路徑(容器內的路徑==>也就是私服容器所在映象路徑)

--privileged=true:放開許可權。

理解如下圖:

容器卷是什麼?

執行一個帶有容器卷儲存功能的容器例項命令公式

docker run -it --privileged=true -v /宿主機絕對路徑目錄:/容器內目錄 映象名稱

能幹嘛?

持久化

特點:

1:資料卷可在容器之間共享或者是重用資料

2:卷中的更改可以直接實時生效

3:資料卷中的更改不會包含在映象的更新中

4:資料卷的週期一直持續到沒用容器使用它為止

直通車,本系列教程已釋出文章,快速到達,《Docker學習系列》教程已經發布的內容如下:

【圖文教程】Windows11下安裝Docker Desktop

【填坑】在windows系統下安裝Docker Desktop後遷移映象位置

【Docker學習系列】Docker學習1-docker安裝

【Docker學習系列】Docker學習2-docker設定映象加速器

【Docker學習系列】Docker學習3-docker的run命令幹了什麼?docker為什麼比虛擬機器快?

【Docker學習系列】Docker學習2-常用命令之啟動命令和映象命令

【Docker學習系列】Docker學習系列3:常用命令之容器命令

【Docker學習系列】Docker學習4-常用命令之重要的容器命令

【Docker教程系列】Docker學習5-Docker映象理解

【Docker教程系列】Docker學習6-Docker映象commit操作案例

【Docker學習教程系列】7-如何將本地的Docker映象釋出到阿里雲

【Docker學習教程系列】8-如何將本地的Docker映象釋出到私服?

【Docker學習教程系列彙總】筆記及遇到問題解決文章