ConfigFile資料卷是一種用於儲存設定檔的資料卷,可以向ECI執行個體注入配置資料。本文介紹如何為ECI執行個體掛載ConfigFile資料卷。
使用限制
ConfigFile資料卷中,單個設定檔不能大於32 KB,多個設定檔的總和不能大於60 KB。
配置說明(OpenAPI)
調用CreateContainerGroup介面建立ECI執行個體時,您可以通過Volume相關參數聲明資料卷,然後通過Container.VolumeMount相關參數為容器掛載資料卷。相關參數說明如下,更多資訊,請參見CreateContainerGroup。
聲明資料卷
通過Volume相關參數聲明資料卷時,需要先明確Volume的名稱和類型。再根據Volume.N.Type的取值,進一步配置該類型資料卷的相關參數。
名稱 | 類型 | 樣本值 | 描述 |
Volume.N.Name | String | test-volume | 資料卷名稱。 |
Volume.N.Type | String | ConfigFileVolume | 取值為ConfigFileVolume,表示聲明一個ConfigFile類型的資料卷。 |
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Path | String | test/config-test.cnf | 相對於掛載目錄,設定檔所在的相對檔案路徑。 |
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Content | String | bGl1bWk= | 設定檔內容。需要將內容進行Base64編碼。 |
Volume.N.ConfigFileVolume.DefaultMode | Integer | 0644 | 設定檔的預設許可權,採用四位八位元表示。 例如0644表示許可權為 許可權說明如下:
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Mode | Integer | 0644 | 設定檔的許可權,如果沒有設定,則採用ConfigFileVolume.DefaultMode的值。採用四位八位元表示。 例如0644表示許可權為 許可權說明如下:
|
掛載資料卷
聲明資料卷後,可以通過VolumeMount相關參數將資料卷掛載到容器中。
名稱 | 類型 | 樣本值 | 描述 |
Container.N.VolumeMount.N.Name | String | test-volume | 要掛載到容器的資料卷的名稱,對應Volume.N.Name的值。 |
Container.N.VolumeMount.N.MountPath | String | /usr/share | 掛載目錄。 容器掛載目錄下的內容會被資料卷的內容直接覆蓋,請準確填寫。 |
Container.N.VolumeMount.N.SubPath | String | /usr/sub | 資料卷下的子目錄。方便執行個體將同一個資料卷下的不同目錄掛載到容器的不同目錄。 |
Container.N.VolumeMount.N.ReadOnly | Boolean | false | 掛載目錄是否唯讀。預設為false。 |
Container.N.VolumeMount.N.MountPropagation | String | None | 資料卷的掛載傳播設定。掛載傳播允許將容器掛載的卷共用到同一ECI執行個體中的其他容器,甚至可以共用到同一宿主機上的其他ECI執行個體。取值範圍:
預設值:None。 |
Init容器也支援掛載資料卷,參數與上表類似,只需要將Container改為InitContainer。
配置說明(控制台)
通過Elastic Container Instance售賣頁建立ECI執行個體時,您可以在容器組配置地區聲明資料卷,然後在容器配置地區,將資料卷掛載到容器中。
聲明資料卷
在容器組配置地區,展開進階配置。
在儲存處選擇配置項頁簽,單擊添加。
配置ConfigFile資料卷的相關參數。
名稱:ConfigFile資料卷的名稱。
設定檔Path:設定檔所在的相對檔案路徑。
檔案內容:設定檔的內容。請明文輸入,控制台會自動進行Base64編碼。
掛載資料卷
在容器配置地區選取項目容器,展開該容器的進階配置。
開啟儲存開關後單擊添加。
此處可添加的資料卷為配置容器組時聲明的資料卷。
如果要為多個容器掛載資料卷,請選擇其他容器,重複上述操作。
配置樣本
調用CreateContainerGroup介面建立ECI執行個體,並為其掛載ConfigFile資料卷。參數樣本如下,更多資訊,請參見CreateContainerGroup。
ContainerGroupName=test-configfile
#聲明資料卷
Volume.1.Name=configfile-demo
Volume.1.Type=HostPathVolume
Volume.1.ConfigFileVolume.ConfigFileToPath.1.Path=test/config-test.cnf
Volume.1.ConfigFileVolume.ConfigFileToPath.1.Content=c2VydmVyLnBvcnQgPSA4MDgw
Volume.1.ConfigFileVolume.DefaultMode=0644
#為容器掛載資料卷
Container.1.Name=nginx
Container.1.Image=registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.14.2
Container.1.VolumeMount.1.Name=configfile-demo
Container.1.VolumeMount.1.MountPath=/data