Docker快速入門三 Docker資料卷

2021-10-07 10:15:59 字數 2441 閱讀 8184

目錄

1.什麼是資料卷

2.如何新增資料卷

2.1命令方式

2.2dockerfile方式

3.使用資料卷

3.1docker與宿主機資料共享

3.2docker間資料卷共享

docker資料卷類似虛擬機器的共享資料夾。

①用於容器資料持久化;

②容器間資料共享。

其中容器資料持久化不是說容器停止執行,資料還儲存,而是容器刪除,資料依然儲存。docker產生的資料,如果不通過docker commit生成新的映象,使資料成為映象的一部分儲存下來,那麼容器刪除後,資料自然也就沒了(容器stop後再重啟,資料還是會保留的)。

第一步:執行docker run -v命令,建立容器時繫結資料卷

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

-v:volume,繫結資料卷

ro:read only,容器內此目錄唯讀

--privileged=true:使用該引數,容器內的root擁有真正的root許可權,如果遇到許可權問題不能寫資料卷資料夾,使用此引數

以上命令將容器內的/dockerdata目錄對映到宿主機的/dockerdata。

第二步:執行docker inspect命令,檢視是否繫結資料卷成功

以上可以看到,資料卷繫結成功。

第一步:編寫dockerfile

vim dockerfile

從docker hub上拉取centos

from centos

容器內建立/dockerdata1和/dockerdata2兩個資料卷

volume [「/dockerdata1」,」/dockerdata2」]

列印success

cmd echo 「success.」

cmd /bin/bash

說明:出於移植和分享考慮,用-v 主機目錄方法不能直接在dockerfile實現(因為宿主機中可能沒有這個資料夾),volume只能設定docker容器內的資料卷,宿主機會預設提供目錄與之對應,可通過docker inspect命令檢視。

第二步:執行docker build,生成映象

docker build命令用於根據給定的dockerfile和上下文以構建docker映象。

docker build [引數] [path | url | -]

引數說明:

-f:指定使用的dockerfile;

-t:建立映象的名字及tag;

[path | url | -]:dockerfile所在路徑,可以是dockerfile所在的本地路徑path,也可以是遠端url,如git庫、tarball或文字檔案等,還可以是-,表示通過stdin給出dockerfile。

以上通過docker build生成houpk/centos映象,預設tag為latest。

第三步:執行docker run,建立容器

執行如下命令

docker run -it 映象 /bin/bash

第四步:執行docker inspect,檢視資料卷掛載情況

在宿主機資料卷目錄下建立或修改檔案,在容器內可以看到。

docker容器停止執行,在宿主機資料夾下做修改,docker容器再啟動後,可以看到修改。

在執行docker run建立容器時,使用--valume-from引數,表示新容器繼承指定容器的資料卷。

docker run -it --name dc01 --volumes-from dc00 映象

表示按映象建立名字為dc01的容器,容器dc01繼承容器dc00的資料卷。

其中dc00也是由此映象建立。

這種用法可以用於搭建redis集群等情況。

Docker快速入門

本指南適用於開發環境,如果您打算在生產環境中執行eosio,請考慮構建eosio 先決條件 第1步 提取映象 eosio dev docker映像是為本地開發而設計的eosio軟體的編譯版本。從儲存庫中提取映象 docker pull eosio eos dev並啟動eosio節點 docker r...

Docker 快速入門

docker 是乙個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到乙個可移植的容器中,然後發布到任何流行的 linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。在本場 chat 中你可以學到的 什麼是容器 docker 為什麼這麼火 docker 在網際...

Docker快速入門

1 環境要求 docker分為社群版和企業版,這裡我們安裝的是社群版。在ubuntu下安裝docker需要有一定的環境要求,可以執行以下命令檢視主機環境 uname a 2 部署docker 第一步 安裝基本軟體。第二步 指定使用阿里雲映象。sudo curl fssl sudo apt key a...