為ECI實例掛載ConfigFile數(shù)據(jù)卷
ConfigFile數(shù)據(jù)卷是一種用于存儲配置文件的數(shù)據(jù)卷,可以向ECI實例注入配置數(shù)據(jù)。本文介紹如何為ECI實例掛載ConfigFile數(shù)據(jù)卷。
使用限制
ConfigFile數(shù)據(jù)卷中,單個配置文件不能大于32 KB,多個配置文件的總和不能大于60 KB。
配置說明(OpenAPI)
調(diào)用CreateContainerGroup接口創(chuàng)建ECI實例時,您可以通過Volume相關(guān)參數(shù)聲明數(shù)據(jù)卷,然后通過Container.VolumeMount相關(guān)參數(shù)為容器掛載數(shù)據(jù)卷。相關(guān)參數(shù)說明如下,更多信息,請參見CreateContainerGroup。
聲明數(shù)據(jù)卷
通過Volume相關(guān)參數(shù)聲明數(shù)據(jù)卷時,需要先明確Volume的名稱和類型。再根據(jù)Volume.N.Type的取值,進一步配置該類型數(shù)據(jù)卷的相關(guān)參數(shù)。
名稱 | 類型 | 示例值 | 描述 |
Volume.N.Name | String | test-volume | 數(shù)據(jù)卷名稱。 |
Volume.N.Type | String | ConfigFileVolume | 取值為ConfigFileVolume,表示聲明一個ConfigFile類型的數(shù)據(jù)卷。 |
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Path | String | test/config-test.cnf | 相對于掛載目錄,配置文件所在的相對文件路徑。 |
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Content | String | bGl1bWk= | 配置文件內(nèi)容。需要將內(nèi)容進行Base64編碼。 |
Volume.N.ConfigFileVolume.DefaultMode | Integer | 0644 | 配置文件的默認權(quán)限,采用四位八進制數(shù)表示。 例如0644表示權(quán)限為 權(quán)限說明如下:
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Mode | Integer | 0644 | 配置文件的權(quán)限,如果沒有設(shè)置,則采用ConfigFileVolume.DefaultMode的值。采用四位八進制數(shù)表示。 例如0644表示權(quán)限為 權(quán)限說明如下:
|
掛載數(shù)據(jù)卷
聲明數(shù)據(jù)卷后,可以通過VolumeMount相關(guān)參數(shù)將數(shù)據(jù)卷掛載到容器中。
名稱 | 類型 | 示例值 | 描述 |
Container.N.VolumeMount.N.Name | String | test-volume | 要掛載到容器的數(shù)據(jù)卷的名稱,對應Volume.N.Name的值。 |
Container.N.VolumeMount.N.MountPath | String | /usr/share | 掛載目錄。 容器掛載目錄下的內(nèi)容會被數(shù)據(jù)卷的內(nèi)容直接覆蓋,請準確填寫。 |
Container.N.VolumeMount.N.SubPath | String | /usr/sub | 數(shù)據(jù)卷下的子目錄。方便實例將同一個數(shù)據(jù)卷下的不同目錄掛載到容器的不同目錄。 |
Container.N.VolumeMount.N.ReadOnly | Boolean | false | 掛載目錄是否只讀。默認為false。 |
Container.N.VolumeMount.N.MountPropagation | String | None | 數(shù)據(jù)卷的掛載傳播設(shè)置。掛載傳播允許將容器掛載的卷共享到同一ECI實例中的其他容器,甚至可以共享到同一宿主機上的其他ECI實例。取值范圍:
默認值:None。 |
Init容器也支持掛載數(shù)據(jù)卷,參數(shù)與上表類似,只需要將Container改為InitContainer。
配置說明(控制臺)
通過彈性容器實例售賣頁創(chuàng)建ECI實例時,您可以在容器組配置區(qū)域聲明數(shù)據(jù)卷,然后在容器配置區(qū)域,將數(shù)據(jù)卷掛載到容器中。
聲明數(shù)據(jù)卷
在容器組配置區(qū)域,展開高級配置。
在存儲處選擇配置項頁簽,單擊添加。
配置ConfigFile數(shù)據(jù)卷的相關(guān)參數(shù)。
名稱:ConfigFile數(shù)據(jù)卷的名稱。
配置文件Path:配置文件所在的相對文件路徑。
文件內(nèi)容:配置文件的內(nèi)容。請明文輸入,控制臺會自動進行Base64編碼。
掛載數(shù)據(jù)卷
在容器配置區(qū)域選擇容器,展開該容器的高級配置。
打開存儲開關(guān)后單擊添加。
此處可添加的數(shù)據(jù)卷為配置容器組時聲明的數(shù)據(jù)卷。
如果要為多個容器掛載數(shù)據(jù)卷,請選擇其他容器,重復上述操作。
配置示例
調(diào)用CreateContainerGroup接口創(chuàng)建ECI實例,并為其掛載ConfigFile數(shù)據(jù)卷。參數(shù)示例如下,更多信息,請參見CreateContainerGroup。
ContainerGroupName=test-configfile
#聲明數(shù)據(jù)卷
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
#為容器掛載數(shù)據(jù)卷
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