Crée un cache d'image pour accélérer le téléchargement des images et réduire le temps de démarrage lors de la création ultérieure d'instances Elastic Container Instance (ECI).
Description de l'opération
Précautions
La création d'un cache d'image entraîne des frais de ressources. Renseignez-vous sur les informations de facturation au préalable. Pour plus d'informations, consultez Facturation du cache d'image.
Avant de créer un cache d'image, évaluez la taille totale des images à mettre en cache. Si la taille totale des images dépasse la taille de cache configurée, la création échouera.
Lors de la création d'un cache d'image, le système crée automatiquement une instance ECI et un disque cloud ESSD PL1 pour la création automatique intermédiaire de l'image. Ne supprimez pas l'instance ECI ou le disque cloud pendant le processus de création. Sinon, la création automatique de l'image échouera.
La création d'un cache d'image génère un instantané correspondant. Ne supprimez pas l'instantané. Sinon, le cache d'image deviendra invalide.
Si vous utilisez un SDK, la version requise est Java 1.0.10 ou ultérieure, ou Python 1.0.7 ou ultérieure.
Recommandations
Pour les images Container Registry Enterprise Edition qui utilisent des noms de domaine personnalisés, spécifiez l'instance Container Registry (en définissant les paramètres AcrRegistryInfo) pour configurer l'accès sans mot de passe. Lors de la définition des paramètres AcrRegistryInfo, vous devez définir AcrRegistryInfo.N.InstanceId.
Si le cache d'image sera utilisé pour créer un grand nombre d'instances ECI (plus de 1 000) par lots, définissez StandardCopyCount et FlashCopyCount pour activer la fonctionnalité d'instantanés à copies multiples. Les instantanés à copies multiples sont facturés en fonction des données incrémentielles. Étant donné que les données des copies d'instantanés créées en même temps sont identiques, la fonctionnalité d'instantanés à copies multiples n'entraîne pas de frais supplémentaires.
Lorsque vous appelez CreateImageCache pour créer un cache d'image, le système crée automatiquement un rôle lié au service nommé AliyunServiceRoleForECI pour accéder aux services cloud associés tels que ECS et VPC. Pour plus d'informations, consultez Rôle lié au service Elastic Container Instance.
Testez maintenant
Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.
Test
Autorisation RAM
|
eci:CreateImageCache |
create |
*ImageCache.
|
|
Aucune |
Paramètres de requête
|
Paramètre |
Type |
Requis |
Description |
Exemple |
| RegionId |
string |
Oui |
L'identifiant de la région. |
cn-hangzhou |
| RegionId |
string |
Oui |
La zone. |
cn-hangzhou-g |
| ZoneId |
string |
Non |
L'identifiant du groupe de sécurité. |
sg-uf66jeqopgqa9hdn**** |
| SecurityGroupId |
string |
Non |
L'identifiant du vSwitch. Vous pouvez spécifier plusieurs identifiants de vSwitch (jusqu'à 10 à la fois), séparés par des virgules (,). Exemple : |
vsw-uf6h3rbwbm90urjwa**** |
| VSwitchId |
string |
Non |
Le nom du cache d'image. |
testcache |
| ImageCacheName |
string |
Oui |
L'adresse IP élastique (EIP). Si vous devez télécharger des images depuis Internet, assurez-vous que l'instance ECI peut accéder à Internet. Vous pouvez configurer une EIP ou une passerelle NAT pour activer l'accès au réseau public. |
eip-2zedsm5mfl3uhdj2d**** |
| EipInstanceId |
string |
Non |
L'identifiant du groupe de ressources. |
rg-aekzh43v***** |
| ResourceGroupId |
string |
Non |
Le jeton client utilisé pour garantir l'idempotence de la requête. Vous pouvez utiliser le client pour générer le jeton, mais vous devez vous assurer que le jeton est unique pour chaque requête. Le jeton ne peut contenir que des caractères ASCII et ne doit pas dépasser 64 caractères. Pour plus d'informations, consultez Comment garantir l'idempotence. |
123e4567-xxx-xxx-xxxx-42665544xxxx |
| ClientToken |
string |
Non |
La taille du cache d'image. Valeur par défaut : 20 Gio. |
20 |
| ImageCacheSize |
integer |
Non |
La période de rétention du cache d'image. Le cache d'image est supprimé après son expiration. Par défaut, le cache d'image n'expire jamais. Remarque
Les caches d'image dont la création échoue ne sont conservés que pendant une journée. |
7 |
| RetentionDays |
integer |
Non |
Indique si la réutilisation du cache d'image doit être activée. Si cette fonctionnalité est activée, un cache d'image nouvellement créé peut réutiliser des couches d'image à partir de caches d'image existants, ce qui accélère la création du cache d'image. Valeurs valides :
Valeur par défaut : false. |
true |
| AutoMatchImageCache |
boolean |
Non |
Les informations du référentiel d'images. |
true |
| ImageRegistryCredential |
array<object> |
Non |
Les images de conteneur utilisées pour créer le cache d'image. |
registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.15.10-perl |
|
object |
Non |
Les images de conteneur utilisées pour créer le cache d'image. |
registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.15.10-perl |
|
| Password |
string |
Non |
Le mot de passe du registre d'images. |
password |
| Server |
string |
Non |
L'adresse du registre d'images. N'incluez pas le préfixe |
registry-vpc.cn-hangzhou.aliyuncs.com |
| UserName |
string |
Non |
Le nom d'utilisateur du registre d'images. |
username |
| Image |
array |
Oui |
Les informations de balise du cache d'image. Vous pouvez spécifier jusqu'à 20 balises. |
registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.15.10-perl |
|
string |
Non |
Les informations de balise du cache d'image. Vous pouvez spécifier jusqu'à 20 balises. |
registry-vpc.cn-hangzhou.aliyuncs.com/eci_open/nginx:1.15.10-perl |
|
| Tag |
array<object> |
Non |
Indique si la fonctionnalité de cache d'image instantané doit être activée, ce qui accélère la création du cache d'image. Valeurs valides :
Valeur par défaut : false. |
true |
|
object |
Non |
Les balises du cache d'images. Vous pouvez spécifier jusqu'à 20 balises. |
||
| Key |
string |
Non |
La clé de la balise du cache d'images. |
imc |
| Value |
string |
Non |
La valeur de la balise du cache d'images. |
test |
| Flash |
boolean |
Non |
Les informations de l'instance Container Registry. Pour plus d'informations, consultez Télécharger des images depuis Container Registry sans utiliser de mot de passe. |
true |
| AcrRegistryInfo |
array<object> |
Non |
Les annotations. Ce paramètre n'est pas disponible pour une utilisation publique. |
hide |
|
object |
Non |
Les informations sur l'instance ACR. |
||
| Domain |
array |
Non |
Les noms de domaine de l'instance ACR Enterprise. Par défaut, tous les noms de domaine de l'instance sont spécifiés. Vous pouvez spécifier un ou plusieurs noms de domaine. Séparez les noms de domaine multiples par des virgules (,). |
test****-registry.cn-beijing.cr.aliyuncs.com |
|
string |
Non |
Les noms de domaine de l'instance ACR Enterprise. Par défaut, tous les noms de domaine de l'instance sont spécifiés. Vous pouvez spécifier un ou plusieurs noms de domaine. Séparez les noms de domaine multiples par des virgules (,). |
test****-registry.cn-beijing.cr.aliyuncs.com |
|
| InstanceName |
string |
Non |
Le nom de l'instance ACR Enterprise. |
test**** |
| InstanceId |
string |
Non |
L'identifiant de l'instance ACR Enterprise. |
cri-nwj395hgf6f3**** |
| RegionId |
string |
Non |
La région où réside l'instance ACR Enterprise. |
cn-beijing |
| ArnService |
string |
Non |
L'Alibaba Cloud Resource Name (ARN) du rôle RAM qui appartient au compte de la ressource, tel qu'une instance ECI. |
acs:ram::1609982529******:role/role-assume |
| ArnUser |
string |
Non |
L'ARN du rôle RAM qui appartient au compte de l'instance ACR. |
acs:ram::1298452580******:role/role-acr |
| Annotations |
string |
Non |
L'adresse du référentiel d'images à téléchargement direct. Lorsque vous créez un cache d'image en utilisant des images provenant d'un référentiel d'images à téléchargement direct qui utilise le protocole HTTP, configurez ce paramètre pour que l'ECI télécharge les images via HTTP, évitant ainsi les échecs de téléchargement d'images causés par une incompatibilité de protocole. |
"harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80" |
| PlainHttpRegistry |
string |
Non |
L'adresse du référentiel d'images auto-géré. Lorsque vous créez un cache d'image en utilisant des images provenant d'un référentiel d'images auto-géré qui utilise un certificat auto-signé, configurez ce paramètre pour ignorer l'authentification par certificat, évitant ainsi les échecs de téléchargement d'images causés par un échec d'authentification par certificat. |
"harbor***.pre.com,192.168.XX.XX:5000,reg***.test.com:80" |
| InsecureRegistry |
string |
Non |
Le nombre de copies d'instantanés standard. Par défaut, un cache d'image correspond à un instantané. Si le cache d'image sera utilisé pour créer plusieurs instances ECI par lots, configurez ce paramètre pour activer la fonctionnalité d'instantanés à copies multiples. Nous vous recommandons d'ajouter une copie d'instantané pour 1 000 instances ECI. Remarque
Lorsque la fonctionnalité de cache d'image instantané est désactivée (Flash défini sur false), seuls des instantanés standard sont générés lors de la création du cache d'image. |
7 |
| StandardCopyCount |
integer |
Non |
Le nombre de copies d'instantanés locaux. Par défaut, un cache d'image correspond à un instantané. Si le cache d'image sera utilisé pour créer plusieurs instances ECI par lots, configurez ce paramètre pour activer la fonctionnalité d'instantanés à copies multiples. Nous vous recommandons d'ajouter une copie d'instantané pour 1 000 instances ECI. Remarque
Lorsque la fonctionnalité de cache d'image instantané est activée (Flash défini sur true), les instantanés locaux sont créés en premier lors de la création du cache d'image. Une fois les instantanés locaux créés, la création des instantanés standard commence. Après la création des instantanés standard, les instantanés locaux sont automatiquement supprimés. |
7 |
| FlashCopyCount |
integer |
Non |
La stratégie d'élimination du cache d'image. La valeur par défaut est vide, ce qui indique que le cache d'image est toujours conservé. Vous pouvez définir ce paramètre sur LRU, ce qui indique que le cache d'image peut être supprimé automatiquement. Lorsque le nombre de caches d'image atteint la limite du quota, le système supprime automatiquement les caches d'image les moins récemment utilisés dont la stratégie EliminationStrategy est définie sur LRU. |
LRU |
| EliminationStrategy |
string |
Non |
Le système d'exploitation des images de conteneur. Valeurs valides :
Remarque
Windows est en avant-première sur invitation. Pour l'utiliser, soumettez un ticket. |
Linux |
| OsType |
string |
Non |
Le système d'exploitation de l'image de conteneur. Valeurs valides : |
Linux |
Éléments de réponse
|
Élément |
Type |
Description |
Exemple |
|
object |
|||
| RequestId |
string |
L'identifiant de la requête, qui est un identifiant unique. |
0E234675-3465-4CC3-9D0F-9A864BC391DD |
| ImageCacheId |
string |
L'identifiant du cache d'image. |
imc-2zebxkiifuyzzlhl**** |
| ContainerGroupId |
string |
L'identifiant de l'instance ECI utilisée pour la création intermédiaire du cache d'image. |
eci-2zebxkiifuyzzlhl**** |
Exemples
JSON format
{
"RequestId": "0E234675-3465-4CC3-9D0F-9A864BC391DD",
"ImageCacheId": "imc-2zebxkiifuyzzlhl****",
"ContainerGroupId": "eci-2zebxkiifuyzzlhl****"
}
Codes d'erreur
|
Code de statut HTTP |
Code d'erreur |
Message d'erreur |
Description |
|---|---|---|---|
| 400 | Account.Arrearage | Your account has an outstanding payment. | Le compte présente un impayé. |
| 400 | DryRunOperation | Request validation has been passed with DryRun flag set. | La requête de pré-vérification du test à blanc est valide. |
| 400 | InvalidParameter.CPU.Memory | The specified cpu and memory are not allowed | |
| 400 | IncorrectStatus | %s | L'état de l'instance spécifié n'est pas valide. |
| 400 | ServiceNotEnabled | %s | Le service dont dépend cette requête n'a pas été activé. Activez le service et réessayez. |
| 400 | DiskVolume.NotSupport | The disk volume is not supported. | Les volumes de disques cloud ne sont pas pris en charge. Contactez-nous si vous avez besoin de cette fonctionnalité. |
| 400 | RamRole.NotSupport | The RAM role is not supported. | Le rôle d'instance RAM n'est pas pris en charge. |
| 400 | ImageCache.IncorrectStatus | %s | Le cache d'images n'est pas dans l'état correct. |
| 400 | ImageCacheNotSupport | Image cache is not available for all users. If you want to enable this function, contact us. | La fonctionnalité de cache d'images n'est pas encore disponible dans toutes les régions. Contactez-nous si vous avez besoin de cette fonctionnalité. |
| 400 | EipAddressPoolIpNotEnough | The ip address of specified PublicIpAddressPool is not enough. | Le pool d'adresses publiques EIP spécifié ne dispose pas de ressources d'adresses suffisantes. |
| 400 | OperationConflict | The request was denied. It conflicts with a previous request. | |
| 403 | OperationDenied.VswZoneMisMatch | The specified VSwitchId is not in the specified Zone. | |
| 403 | QuotaExceeded | %s quota exceeded. | |
| 403 | Zone.NotOnSale | The specified zone is not available for purchase. | La zone dans laquelle vous souhaitez créer l'instance n'est plus disponible à l'achat. Utilisez une zone différente, ou le vSwitch du VPC spécifié ne peut pas être utilisé dans cette zone. |
| 403 | Forbidden.RiskControl | This operation has been identified as an abnormal operation and cannot be processed. | Cette opération a été identifiée comme anormale et ne peut pas être traitée. |
| 403 | Forbidden.SubUser | The specified action is not available for you. | |
| 403 | Forbidden.OnlyForInvitedTest | Eci create action is only open to invited users during public beta. | |
| 403 | OperationDenied.SecurityGroupMisMatch | The specified VSwitchId and SecurityGroupId are not in the same VPC. | |
| 403 | InvalidVSwitchId.IpNotEnough | The specified VSwitch does not have enough IP addresses. | |
| 403 | Forbidden.UserBussinessStatus | This operation is not allowed, because you have overdue bills. Pay the overdue bill and try again. | L'opération est interdite car le compte présente un impayé. Rechargez votre compte et réessayez. |
| 403 | Forbidden.UserNotRealNameAuthentication | This operation is not allowed, because you have not passed the real-name verification. | L'opération est interdite car l'utilisateur n'a pas terminé la vérification de son nom réel. |
| 403 | InvalidUser.PassRoleForbidden | The RAM user is not authorized to assume a RAM role. | L'utilisateur RAM n'a pas l'autorisation d'utiliser le rôle d'instance RAM. |
| 403 | OperationDenied.NoStock | Sales of this resource are temporarily suspended in the specified zone. We recommend that you use the multi-zone creation function to avoid the risk of insufficient resource. For more information, see https://www.alibabacloud.com/help/document_detail/157290.html | |
| 403 | NoPermission | The RAM role AliyunECIContainerGroupRole does not belong to eci.aliyuncs.com. Please check and try again. | |
| 403 | SecurityRisk.3DVerification | We have detected a security risk with your default credit or debit card. Please proceed with verification via the link in your email. | Un risque de sécurité a été détecté sur votre carte de crédit ou de débit par défaut. Vérifiez votre carte en utilisant le lien dans l'e-mail. |
| 403 | CreateServiceLinkedRole.Denied | Please make sure the account has ram:CreateServiceLinkedRole permission. | Assurez-vous que le compte dispose de l'autorisation ram:CreateServiceLinkedRole. |
Consultez Codes d'erreur pour la liste complète.
Notes de version
Consultez Notes de version pour la liste complète.