您現在的位置是:首頁 > 攝影首頁攝影

一篇文章教你實戰Docker容器資料卷

由 凱哥Java 發表于 攝影2022-12-27
簡介txt檔案依然會在容器中2:讀寫規則對映新增說明當宿主機和容器掛載資料卷之後,預設的讀寫許可權就是:“讀寫”設定只讀許可權的命令公式docker run -it ——privileged=true -v 宿主機絕對路徑目錄:容器內目錄:ro

ai文字怎麼自由變形

「Docker學習系列教程」10-Docker容器資料卷案例

在上一篇中(

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

),咱們對Docker中的容器資料卷做了介紹。已經知道了容器資料卷是什麼?能幹什麼用。那麼本篇咱們就來實戰容器資料卷,Docker容器資料卷案例主要做以下三個案例。

一篇文章教你實戰Docker容器資料卷

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

1:宿主機(也就是Docker所安裝的機器)與容器之間的對映-讓Docker可以直接訪問宿主機上面的指定目錄;

2:讀寫規則對映新增說明-資料券預設是讀寫許可權的,我們可以設定只讀許可權

3:卷的繼承和共享-容器1做了對映後,容器2可以繼承容器1,然後容器2也就有了對映關係

1:宿主機VS容器之間對映新增容器卷

1.1:命令公式:

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

注意這個命令是在宿主機上執行

例項:

將宿主機/tmp/host_data目錄對映到容器的/tmp/docker_data上

一篇文章教你實戰Docker容器資料卷

在d為:bdea29051ebb的容器i的/tmp/docker_data裡面建立一個indocker。txt

一篇文章教你實戰Docker容器資料卷

接著,我們回到宿主機中,檢視tmp/host_data目錄下:

一篇文章教你實戰Docker容器資料卷

同理,在宿主機上建立了inhost。txt檔案,在容器中也可以看到

一篇文章教你實戰Docker容器資料卷

一篇文章教你實戰Docker容器資料卷

1.2:檢視資料卷是否掛載成功

命令公式:

docker inspect 容器id

一篇文章教你實戰Docker容器資料卷

再到 Mounts這個部分:

一篇文章教你實戰Docker容器資料卷

我們可以看到type是bind,sorce是宿主機的,destination是容器的

1.3:容器和宿主機之間資料共享

上文案例中的,indocker。txt和inhost。txt案例就是。

思考:當把容器關閉後,在宿主機的目錄中,在建立了一個c。txt檔案之後,在啟動容器,那麼容器的掛載目錄中會有c。txt檔案嗎 ?

答案:c。txt檔案依然會在容器中

2:讀寫規則對映新增說明

當宿主機和容器掛載資料卷之後,預設的讀寫許可權就是:“讀寫”

一篇文章教你實戰Docker容器資料卷

設定只讀許可權的命令公式

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

和預設的區別就是加上了ro引數

ro:read only。

如果在容器內寫操作會有以下提示:

一篇文章教你實戰Docker容器資料卷

3:卷的繼承和共享

案例:

容器1完成和宿主機的對映

容器2繼承容器1的卷規則

一篇文章教你實戰Docker容器資料卷

容器2繼承容器1的卷規則:

命令公式

docker run -it ——privileged=true ——volumes-from 父類 [name] 映象名

一篇文章教你實戰Docker容器資料卷

一篇文章教你實戰Docker容器資料卷

在u2容器中,檢視tmp目錄

一篇文章教你實戰Docker容器資料卷

可以看到已經存在了。