Les versions de Helm antérieures à la 3,7 utilisent un ensemble de commandes expérimentales Open Container Initiative (OCI) — helm3 chart save, push, pull et export — au lieu de la commande helm push disponible dans les versions 3.7 et ultérieures. Utilisez ces commandes pour envoyer et extraire des charts en tant qu'artefacts OCI dans une instance Container Registry Enterprise Edition.
Prérequis
Avant de commencer, assurez-vous de disposer des éléments suivants :
Une instance Container Registry Enterprise Edition. Pour en créer une, consultez la documentation de Container Registry.
Helm V3 installé. Exécutez
helm3 version -cpour vérifier votre version. Cette rubrique utilise la version 3.0.2.Un accès réseau à votre instance Enterprise Edition via Internet ou un VPC (Virtual Private Cloud).
Étape 1 : Configurer votre instance Enterprise Edition
Créer un namespace
Connectez-vous à la console Container Registry.
Dans le volet de navigation de gauche, cliquez sur Instances.
Sur la page Instances, cliquez sur l'instance Enterprise Edition que vous souhaitez gérer.
Connectez-vous à la console Container Registry.
Dans le volet de navigation de gauche, choisissez Repository > Namespace.
Sur la page Namespace, cliquez sur Create Namespace.
Dans la boîte de dialogue Create Namespace, configurez les paramètres Namespace, Automatically Create Repository et Default Configurations for Automatically Created Repositories, puis cliquez sur Confirm.
Créer un dépôt d'images
Dans le volet de navigation de gauche, choisissez Repositories > Repositories.
Sur la page Repositories, cliquez sur Create Repository.
À l'étape Repository Info, configurez les paramètres Namespace, Repository Name, Repository Type, Image Version, Accelerated Image, Summary et Description, puis cliquez sur Next.
-
À l'étape Code Source, configurez les paramètres Code Source, Build Settings et Build Rules, puis cliquez sur Create Repository. Le tableau suivant décrit les principaux paramètres :
Parameter
Description
Code Source
Sélectionnez la source du code.
Automatically Build Images When Code Changes
Déclenche automatiquement une build lorsque le code est validé (commit) sur une branche.
Build With Servers Deployed Outside Chinese Mainland
Effectue les builds d'images sur des serveurs situés hors de Chine continentale et les envoie vers le dépôt dans la région spécifiée. Activez cette option si votre Dockerfile extrait des dépendances depuis des sites situés hors de Chine continentale et si la connexion transfrontalière est instable.
Build Without Cache
Force le téléchargement systématique de l'image de base à chaque build, ce qui peut augmenter le temps de build. Désactivez cette option pour utiliser le cache et accélérer les builds.
Sur la page Repositories, cliquez sur le dépôt d'images que vous avez créé. Si l'option Build apparaît dans le volet de navigation de gauche de la page de gestion du dépôt, cela signifie que le dépôt d'images est lié au dépôt de code source.
Configurer un identifiant d'accès
Utilisez un mot de passe ou un jeton comme identifiant d'accès pour le dépôt d'images. Cette rubrique utilise un mot de passe.
Dans le volet de navigation de gauche, choisissez Repositories > Access Credential.
Sur la page Access Credential, cliquez sur Set Password.
Dans la boîte de dialogue Set Password, définissez les champs Password et Confirm Password, puis cliquez sur Confirm.
Configurer une liste de contrôle d'accès (ACL)
Activez l'accès Internet ou ajoutez un VPC afin de pouvoir envoyer des charts vers le dépôt d'images. Cette rubrique utilise l'accès Internet. Pour l'accès via VPC, consultez la section Configurer une ACL VPC.
Dans le volet de navigation de gauche, choisissez Repositories > Access Control.
Sur la page Access Control, cliquez sur l'onglet Internet.
Activez l'option Enable Access over Internet, puis cliquez sur Add Internet Whitelist.
Dans la boîte de dialogue Add Internet Whitelist, spécifiez le bloc CIDR et une description, puis cliquez sur Confirm.
(Facultatif) Activer l'extraction anonyme
Une fois l'extraction anonyme activée, les utilisateurs peuvent extraire des charts depuis un dépôt d'images public sans se connecter.
Connectez-vous à la console Container Registry.
Dans la barre de navigation supérieure, sélectionnez une région.
Dans le volet de navigation de gauche, cliquez sur Instances.
Sur la page Instances, cliquez sur l'instance Enterprise Edition que vous souhaitez gérer.
Connectez-vous à la console Container Registry.
Dans la section Instance Settings située à droite de la page Overview, activez l'option Pull from Anonymous Users.
Dans la boîte de dialogue Tips, cliquez sur Confirm.
Étape 2 : Envoyer et extraire des charts
Configurer Helm
-
Téléchargez Helm V3 depuis le site officiel. Cette rubrique utilise la version 3.0.2. Exécutez la commande suivante pour vérifier votre version :
helm3 version -c -
Activez la fonctionnalité expérimentale OCI :
export HELM_EXPERIMENTAL_OCI=1
Se connecter à l'instance Enterprise Edition
Remplacez <Registry logon name> par le nom de votre compte Alibaba Cloud, et remplacez <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com par l'endpoint de votre instance.
helm3 registry login --username=<Registry logon name> <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com
Exemple :
helm3 registry login --username=123@188077086902**** m**-registry.cn-hangzhou.cr.aliyuncs.com
Lorsque vous y êtes invité, saisissez le mot de passe que vous avez défini dans la section Configurer un identifiant d'accès.
Pour extraire des charts depuis un dépôt d'images public sans vous connecter, activez l'option Pull from Anonymous Users sur la page Overview de votre instance Enterprise Edition.
Envoyer un chart
-
Créez un chart exemple :
helm3 create helloworld -
Enregistrez le répertoire du chart en tant qu'image taguée dans le dépôt de votre instance Enterprise Edition :
helm3 chart save helloworld <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com/<Namespace name>/<Name of the image repository>:<Image tag>Exemple :
helm3 chart save helloworld m**-registry.cn-hangzhou.cr.aliyuncs.com/m**/test:latest -
Envoyez le chart vers le dépôt de votre instance Enterprise Edition :
helm3 chart push <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com/<Namespace name>/<Name of the image repository>:<Image tag>Exemple :
helm3 chart push m**-registry.cn-hangzhou.cr.aliyuncs.com/m**/test:latest
Extraire un chart
-
Extrayez le chart depuis le dépôt de votre instance Enterprise Edition :
helm3 chart pull <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com/<Namespace name>/<Name of the image repository>:<Image tag>Exemple :
helm3 chart pull m**-registry.cn-hangzhou.cr.aliyuncs.com/m**/test:latest -
Exportez le chart vers un répertoire local :
helm3 chart export <Name of the Enterprise Edition instance>.<Region in which the Enterprise Edition instance resides>.cr.aliyuncs.com/<Namespace name>/<Name of the image repository>:<Image tag> -d .Exemple :
helm3 chart export m**-registry.cn-hangzhou.cr.aliyuncs.com/m**/test:latest -d . -
Installez le chart :
helm3 install helloworld ./helloworld