Un volumen ConfigFile es un tipo de volumen que almacena archivos de configuración y permite inyectar datos de configuración en una instancia de Elastic Container Instance (ECI). En este tema se describe cómo montar un volumen ConfigFile para una instancia ECI.
Límites
En un volumen ConfigFile, un solo archivo de configuración no puede superar los 32 KB de tamaño. Además, el tamaño total de todos los archivos de configuración no debe exceder los 60 KB.
Configuración (API)
Cuando llame a la operación API CreateContainerGroup para crear una instancia de contenedor elástico, utilice los parámetros relacionados con Volume para especificar los volúmenes. Después, use los parámetros relacionados con Container.VolumeMount para montar dichos volúmenes en los contenedores. A continuación se describen los parámetros correspondientes. Para obtener más información, consulte CreateContainerGroup.
Declarar un volumen
Al usar los parámetros relacionados con Volume para especificar volúmenes, primero debe indicar el tipo y el nombre de cada uno. Luego, configure los demás parámetros de Volume según el valor del parámetro Volume.N.Type.
|
Parámetro |
Tipo |
Ejemplo |
Descripción |
|
Volume.N.Name |
String |
test-volume |
El nombre del volumen. |
|
Volume.N.Type |
String |
ConfigFileVolume |
Establezca el valor en |
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Path |
String |
test/config-test.cnf |
La ruta del archivo de configuración, relativa al directorio de montaje. |
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Content |
String |
bGl1bWk= |
El contenido del archivo de configuración codificado en Base64. |
|
Volume.N.ConfigFileVolume.DefaultMode |
Integer |
0644 |
Los permisos predeterminados de los archivos de configuración, indicados como un número octal de cuatro dígitos. Por ejemplo, Los permisos se describen de la siguiente manera:
|
|
Volume.N.ConfigFileVolume.ConfigFileToPath.N.Mode |
Integer |
0644 |
Los permisos del archivo de configuración, indicados como un número octal de cuatro dígitos. Si se omite este parámetro, se utiliza el valor de Por ejemplo, Los permisos se describen de la siguiente manera:
|
Montar volúmenes
Una vez especificados los volúmenes, utilice los parámetros relacionados con VolumeMount para montarlos en los contenedores.
Parámetro | Tipo | Ejemplo | Descripción |
Container.N.VolumeMount.N.Name | String | test-volume | El nombre del volumen N que se montará en el contenedor N. Este valor corresponde al de Volume.N.Name. |
Container.N.VolumeMount.N.MountPath | String | /usr/share | La ruta dentro del contenedor donde se montará el volumen. Los datos de este directorio quedan ocultos por los datos del volumen. |
Container.N.VolumeMount.N.SubPath | String | /usr/sub | El subdirectorio del volumen. Este parámetro permite indicar distintos subdirectorios de un mismo volumen para que la instancia los monte en diferentes subdirectorios de los contenedores. |
Container.N.VolumeMount.N.ReadOnly | Boolean | false | Indica si el directorio de montaje es de solo lectura. Valor predeterminado: false. |
Container.N.VolumeMount.N.MountPropagation | String | None | La configuración de propagación de montaje del volumen N. La propagación de montaje permite compartir los volúmenes montados en un contenedor con otros contenedores de la misma instancia de contenedor elástico, o incluso con otras instancias de contenedor elástico en el mismo host. Valores válidos:
Valor predeterminado: None. |
También es posible montar volúmenes en contenedores init. Los parámetros obligatorios son similares a los de la tabla anterior; únicamente debe cambiar Container por InitContainer.
Configuración (consola)
Cuando cree una instancia de contenedor elástico en la página de compra de Elastic Container Instance, especifique los volúmenes en la sección Container Group Configurations y luego móntelos en los contenedores desde la sección Container Configurations.
Declarar un volumen
En la sección Container Group Configurations, expanda Advanced Settings.
En Storage, seleccione la pestaña Configuration Item y haga clic en Add.
-
Configure los parámetros del volumen ConfigFile.
Name: el nombre del volumen ConfigFile.
Configuration File Path: la ruta del archivo de configuración relativa al directorio de montaje.
Content: introduzca el contenido del archivo de configuración en texto plano. La consola lo codifica automáticamente en Base64.
Montar el volumen
En la sección Container Configurations, seleccione un contenedor y expanda su Advanced Settings.
-
Active Storage y haga clic en Add.
Solo están disponibles para montaje los volúmenes declarados en la sección Container Group Configurations.
Seleccione el volumen configfile-demo de tipo Configuration Item, establezca la ruta de montaje en el contenedor como
/datay no seleccione la opción Read-only.
Si necesita montar volúmenes en varios contenedores, seleccione más contenedores y repita las operaciones anteriores.
Ejemplo de configuración
Llame a la operación CreateContainerGroup para crear una instancia ECI y montar un volumen ConfigFile en ella. A continuación se muestran los parámetros de solicitud obligatorios. Para obtener más información, 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