Tous les produits
Search
Centre de documentation

Elastic Container Instance:Mount a cloud disk volume to an ECI instance

Dernière mise à jour :Aug 11, 2026

Par défaut, le stockage des conteneurs est éphémère : les données écrites dans un conteneur sont perdues lorsque celui-ci redémarre. Le montage d'un volume de disque permet aux données de persister entre les redémarrages. Cette rubrique explique comment monter un disque en tant que volume lors de la création d'une instance de conteneur élastique via l'API CreateContainerGroup.

Prérequis

Avant de commencer, assurez-vous d'avoir :

  • Une instance de conteneur élastique dans la zone de disponibilité cible

  • Un disque en paiement à l'utilisation dans la même zone de disponibilité que l'instance (pour le provisionnement statique)

Limitations

  • Seuls les disques en paiement à l'utilisation peuvent être montés. Consultez la section Facturation du stockage par blocs.

  • Un disque ne peut être monté que sur une seule instance de conteneur élastique à la fois ; le partage de disques n'est pas possible.

  • Chaque instance de conteneur élastique prend en charge un maximum de six volumes de disque.

  • Le disque doit se trouver dans la même zone de disponibilité que l'instance de conteneur élastique. Le montage inter-zones n'est pas pris en charge. Créez le disque dans la zone cible avant de le monter.

  • Les disques NVMe avec la fonctionnalité de multi-montage activée (disques partagés NVMe) ne peuvent pas être montés.

  • Les disques comportant des partitions ne peuvent pas être montés. Si vous utilisez un snapshot pour créer le disque et que le disque basé sur ce snapshot contient des partitions, le montage échouera également.

Fonctionnement

Les volumes de disque utilisent le plug-in FlexVolume avec le pilote alicloud/disk. Lorsque vous appelez CreateContainerGroup, vous devez :

  1. Déclarer un volume à l'aide des paramètres Volume.N.* en spécifiant la source du disque (disque existant ou nouveau disque).

  2. Monter le volume déclaré sur un conteneur à l'aide des paramètres Container.N.VolumeMount.N.* en spécifiant le chemin de montage et le comportement.

Les deux modes de provisionnement diffèrent par la manière dont le disque est approvisionné :

Mode Cas d'utilisation Paramètre clé
Provisionnement statique Vous disposez déjà d'un disque à attacher volumeId dans FlexVolume.Options
Provisionnement dynamique ECI crée un nouveau disque au moment du lancement volumeSize dans FlexVolume.Options

Déclarer un volume

Définissez les paramètres Volume.N.* suivants pour déclarer un volume de disque.

Paramètre Type Exemple Description
Volume.N.Name String disk-demo Nom du volume. Il est référencé par Container.N.VolumeMount.N.Name lors du montage.
Volume.N.Type String FlexVolume Définissez cette valeur sur FlexVolume pour utiliser le plug-in FlexVolume.
Volume.N.FlexVolume.Driver String alicloud/disk Définissez cette valeur sur alicloud/disk pour monter un disque Alibaba Cloud.
Volume.N.FlexVolume.FsType String ext4 Type de système de fichiers. Valeurs valides : ext4, ext3, xfs, vfat. Valeur par défaut : ext4.
Volume.N.FlexVolume.Options String {"volumeId":"d-bp1****"} Chaîne JSON contenant la configuration du disque. Consultez les sections suivantes pour connaître les clés disponibles.

Provisionnement statique — utiliser un disque existant

Indiquez volumeId dans FlexVolume.Options pour attacher un disque existant. Le disque doit être à l'état Pending et se trouver dans la même zone de disponibilité que l'instance. Lorsque volumeId est spécifié, tous les autres paramètres d'attribut de disque (volumeSize, performanceLevel, etc.) sont ignorés. Si vous ne spécifiez pas volumeId, vous devez spécifier volumeSize.

Clé d'option Description
volumeId ID du disque à attacher.

Provisionnement dynamique — créer un nouveau disque

Omettez volumeId et fournissez volumeSize pour qu'ECI crée un nouveau disque au moment du lancement. Le système utilise automatiquement un SSD amélioré (ESSD) ; vous ne pouvez pas spécifier la catégorie de disque.

Clé d'option Requis Description
volumeSize Oui Taille du disque en GiB. Valeurs valides : 20–32768. Si vous spécifiez également snapshotId, la taille réelle du disque correspond à la valeur la plus élevée entre volumeSize et la taille du disque basé sur le snapshot.
performanceLevel Non Niveau de performance (PL) de l'ESSD. Consultez la section Disques ESSD.
deleteWithInstance Non Indique si le disque doit être libéré lors de la libération de l'instance. Valeur par défaut : true.
encrypted Non Indique si le disque doit être chiffré. Valeur par défaut : false. Consultez la section Présentation du chiffrement.
kmsKeyId Non ID de la clé Key Management Service (KMS) utilisée pour le chiffrement du disque.
snapshotId Non ID du snapshot à utiliser lors de la création du disque. Consultez la section Présentation.
tags Non Tags à associer au disque. Jusqu'à 20 tags. Format : "tagkey1:tagvalue1,tagkey2:tagvalue2".

Monter un volume sur un conteneur

Après avoir déclaré un volume, utilisez les paramètres Container.N.VolumeMount.N.* pour le monter sur un conteneur.

Paramètre Type Exemple Description
Container.N.VolumeMount.N.Name String disk-demo Nom du volume à monter. Doit correspondre à une valeur Volume.N.Name.
Container.N.VolumeMount.N.MountPath String /data Chemin d'accès à l'intérieur du conteneur où le volume est monté. Les données existantes à cet emplacement sont masquées par le volume.
Container.N.VolumeMount.N.SubPath String /logs Sous-répertoire du volume à monter. Utilisez cette option pour monter différents sous-répertoires du même volume sur différents conteneurs.
Container.N.VolumeMount.N.ReadOnly Boolean false Indique si le chemin de montage est en lecture seule. Valeur par défaut : false.
Container.N.VolumeMount.N.MountPropagation String None Contrôle le partage des montages entre les conteneurs et l'hôte. Valeur par défaut : None. Consultez le tableau suivant.

Modes de propagation du montage

Valeur Ce que voit le conteneur Ce que voit l'hôte
None Uniquement les montages présents au moment de l'attachement ; les montages ultérieurs sur ce volume ou ses sous-répertoires ne sont pas visibles. Aucun montage créé à l'intérieur du conteneur n'est visible sur l'hôte.
HostToContainer Tous les montages ultérieurs effectués sur ce volume ou ses sous-répertoires sur l'hôte sont visibles à l'intérieur du conteneur. Aucun montage créé à l'intérieur du conteneur n'est visible sur l'hôte.
Bidirectional Tous les montages ultérieurs effectués sur ce volume ou ses sous-répertoires sur l'hôte sont visibles à l'intérieur du conteneur. Tous les montages créés à l'intérieur du conteneur sont propagés vers l'hôte et vers tous les conteneurs de toutes les instances de conteneur élastique qui utilisent le même volume.
Pour monter des volumes sur des conteneurs d'initialisation, utilisez les mêmes paramètres en remplaçant Container par InitContainer .

Exemples

Les exemples suivants présentent les paramètres clés à transmettre à CreateContainerGroup.

Exemple 1 : Provisionnement statique (disque existant)

ContainerGroupName=test-disk1
SecurityGroupId=sg-bp1daxpbz9lzpvvc****
VSwitchId=vsw-bp1gds63lmlm7ib05****

# Declare the volume
Volume.1.Name=disk-demo
Volume.1.Type=FlexVolume
Volume.1.FlexVolume.Driver=alicloud/disk
Volume.1.FlexVolume.FsType=ext4
Volume.1.FlexVolume.Options={"volumeId":"d-2zebuamrpar7xnj****"}

# Mount the volume to the 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=disk-demo
Container.1.VolumeMount.1.MountPath=/data
Important

Le disque doit être à l'état Pending et se trouver dans la même zone de disponibilité que l'instance avant d'exécuter cette opération.

Exemple 2 : Provisionnement dynamique (nouveau disque)

ContainerGroupName=test-disk2

# Declare the volume
Volume.1.Name=disk-demo
Volume.1.Type=FlexVolume
Volume.1.FlexVolume.Driver=alicloud/disk
Volume.1.FlexVolume.FsType=ext4
Volume.1.FlexVolume.Options={"volumeSize":"50","tags":"test:eci"}

# Mount the volume to the 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=disk-demo
Container.1.VolumeMount.1.MountPath=/data

Un SSD amélioré (ESSD) de 50 GiB est créé automatiquement au lancement de l'instance. Par défaut, le disque est libéré avec l'instance (deleteWithInstance: true).

Étapes suivantes