Um volume ConfigFile armazena arquivos de configuração e permite injetar dados de configuração em uma instância do Elastic Container Instance (ECI). Este tópico descreve como montar um volume ConfigFile em uma instância ECI.
Limites
Em um volume ConfigFile, cada arquivo de configuração não pode exceder 32 KB, e o tamanho total de todos os arquivos de configuração não pode ultrapassar 60 KB.
Configuração (API)
Ao chamar a operação da API CreateContainerGroup para criar uma instância de contêiner elástico, use os parâmetros relacionados a Volume para especificar os volumes e os parâmetros relacionados a Container.VolumeMount para montar esses volumes nos contêineres. Os parâmetros relevantes estão descritos abaixo. Para mais informações, consulte CreateContainerGroup.
Declarar um volume
Para especificar volumes com os parâmetros relacionados a Volume, defina primeiro os tipos e nomes dos volumes. Em seguida, configure os demais parâmetros de Volume conforme o valor do parâmetro Volume.N.Type.
|
Parâmetro |
Tipo |
Exemplo |
Descrição |
|
Volume.N.Name |
String |
test-volume |
Nome do volume. |
|
Volume.N.Type |
String |
ConfigFileVolume |
Defina o valor como |
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Path |
String |
test/config-test.cnf |
Caminho do arquivo de configuração relativo ao diretório de montagem. |
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Content |
String |
bGl1bWk= |
Conteúdo do arquivo de configuração codificado em Base64. |
|
Volume.N.ConfigFileVolume.DefaultMode |
Integer |
0644 |
Permissões padrão dos arquivos de configuração, especificadas como um número octal de quatro dígitos. Por exemplo, As permissões são descritas da seguinte forma:
|
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Mode |
Integer |
0644 |
Permissões do arquivo de configuração, especificadas como um número octal de quatro dígitos. Se este parâmetro for omitido, o sistema usará o valor de Por exemplo, As permissões são descritas da seguinte forma:
|
Montar volumes
Após especificar os volumes, use os parâmetros relacionados a VolumeMount para montá-los nos contêineres.
Parâmetro | Tipo | Exemplo | Descrição |
Container.N.VolumeMount.N.Name | String | test-volume | Nome do volume N a ser montado no contêiner N. Este valor corresponde a Volume.N.Name. |
Container.N.VolumeMount.N.MountPath | String | /usr/share | Caminho dentro do contêiner onde o volume será montado. Os dados neste diretório ficam ocultos pelos dados do volume. |
Container.N.VolumeMount.N.SubPath | String | /usr/sub | Subdiretório do volume. Este parâmetro permite especificar subdiretórios diferentes do mesmo volume para montagem em subdiretórios distintos dos contêineres. |
Container.N.VolumeMount.N.ReadOnly | Boolean | false | Define se o diretório de montagem é somente leitura. Valor padrão: false. |
Container.N.VolumeMount.N.MountPropagation | String | None | Configuração de propagação de montagem do volume N. A propagação de montagem permite compartilhar volumes montados em um contêiner com outros contêineres na mesma instância de contêiner elástico ou até mesmo com outras instâncias no mesmo host. Valores válidos:
Valor padrão: None. |
Também é possível montar volumes em contêineres init. Os parâmetros necessários são semelhantes aos da tabela anterior. Basta alterar Container para InitContainer.
Configuração (console)
Ao criar uma instância de contêiner elástico na página de compra do Elastic Container Instance, especifique os volumes na seção Container Group Configurations e monte-os nos contêineres na seção Container Configurations.
Declarar um volume
Na seção Container Group Configurations, expanda Advanced Settings.
Em Storage, selecione a aba Configuration Item e clique em Add.
-
Configure os parâmetros do volume ConfigFile.
Name: Nome do volume ConfigFile.
Configuration File Path: Caminho do arquivo de configuração relativo ao diretório de montagem.
Content: Insira o conteúdo em texto simples do arquivo de configuração. O console codifica automaticamente o conteúdo em Base64.
Montar o volume
Na seção Container Configurations, selecione um contêiner e expanda suas Advanced Settings.
-
Ative Storage e clique em Add.
Apenas os volumes declarados na seção Container Group Configurations estão disponíveis para montagem.
Selecione o volume configfile-demo do tipo Configuration Item, defina o caminho de montagem no contêiner como
/datae não marque a opção Read-only.
Para montar volumes em vários contêineres, selecione mais contêineres e repita as operações anteriores.
Exemplo de configuração
Chame a operação CreateContainerGroup para criar uma instância ECI e montar um volume ConfigFile nela. O exemplo a seguir mostra os parâmetros de solicitação necessários. Para mais informações, consulte CreateContainerGroup.
ContainerGroupName=test-configfile
#Declare a volume
Volume.1.Name=configfile-demo
Volume.1.Type=ConfigFileVolume
Volume.1.ConfigFileVolume.ConfigFileToPath.1.Path=test/config-test.cnf
Volume.1.ConfigFileVolume.ConfigFileToPath.1.Content=c2VydmVyLnBvcnQgPSA4MDgw
Volume.1.ConfigFileVolume.DefaultMode=0644
#Mount the volume to a container
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