Tous les produits
Search
Centre de documentation

Container Compute Service:Use a secret in a pod

Dernière mise à jour :Aug 12, 2026

De nombreux scénarios métier, tels que la connexion de charges de travail à des bases de données back-end ou la validation de requêtes client, nécessitent le stockage d'informations sensibles (noms d'utilisateur, mots de passe, certificats). Pour éviter les fuites de données, nous vous recommandons d'utiliser des secrets dans votre cluster Alibaba Cloud Container Compute Service (ACS) afin de gérer ces informations. Cette rubrique explique comment créer un secret dans la console Container Compute Service, puis l'utiliser en le montant comme volume ou en l'exposant comme variable d'environnement.

Prérequis

Créer un secret

Cet exemple illustre la création d'un secret nommé secret-test.

  1. Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom du cluster cible. Dans le volet de navigation de gauche, choisissez Workloads > Deployments.

  3. Sur la page , cliquez sur .

  4. Sélectionnez un modèle d'exemple ou personnalisez le contenu YAML, puis cliquez sur .

    Le modèle YAML suivant permet de créer un secret.

    apiVersion: v1
    kind: Secret
    metadata:
      name: secret-test
    type: Opaque
    data:
      username: YWRtaW4=  # The plaintext is admin. Encode it in Base64.
      password: MTIzNDU=  # The plaintext is 12345. Encode it in Base64.

Pour créer un secret au moyen des formulaires de la console plutôt qu'en YAML, consultez la rubrique Créer un secret.

Utiliser un secret comme volume

Kubectl

Vous pouvez monter un secret sous forme de fichiers dans un pod. Dans cet exemple, les clés username et password du secret secret-test sont montées comme fichiers dans le répertoire /srt.

  1. Créez un fichier nommé example0.yaml et copiez-y le contenu suivant.

    apiVersion: v1
    kind: Pod
    metadata:
      name: pod0
    spec:
      containers:
      - name: redis
        image: redis
        volumeMounts:
        - name: srt
          mountPath: "/srt"
          readOnly: true
      volumes:
      - name: srt
        secret:
          secretName: secret-test
  2. Créez le pod.

    kubectl apply -f example0.yaml
  3. Vérifiez que le secret est bien monté.

    kubectl describe pod pod0 | grep -A 4 Volumes

    Résultat attendu :

    Volumes:
      srt:
        Type:        Secret (a volume populated by a Secret)
        SecretName:  secret-test
        Optional:    false

Console

  1. Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom du cluster cible. Dans le volet de navigation de gauche, choisissez Workloads > Deployments.

  3. Sur la page , cliquez sur .

    Remarque

    Pour obtenir une description détaillée des paramètres, consultez la rubrique Créer une charge de travail sans état (deployment).

  4. Dans l'onglet , configurez les paramètres selon vos besoins, puis cliquez sur .

  5. Dans l'onglet , sous la section , cliquez sur . Définissez le paramètre PV type sur secret. Pour le champ mount source, sélectionnez le secret créé précédemment. Dans le champ container path, saisissez le chemin d'accès souhaité dans le conteneur. Une fois ces informations configurées, cliquez sur .

    Voici un exemple de configuration.

    Pour mount source, sélectionnez secret-test. Pour container path, saisissez /srt.

  6. Dans l'onglet , configurez les paramètres et cliquez sur .

Utiliser un secret comme variables d'environnement

Choisissez l'une des méthodes suivantes.

Kubectl

Cet exemple expose les clés username et password du secret secret-test sous forme de variables d'environnement dans le pod.

  1. Créez un fichier nommé example1.yaml et copiez-y le contenu suivant.

    apiVersion: v1
    kind: Pod
    metadata:
      name: pod1
    spec:
      containers:
      - name: redis
        image: redis
        env:
          - name: USERNAME
            valueFrom:
              secretKeyRef:
                name: secret-test
                key: username
          - name: PASSWORD
            valueFrom:
              secretKeyRef:
                name: secret-test
                key: password
  2. Créez le pod.

    kubectl apply -f example1.yaml
  3. Vérifiez que les variables d'environnement sont correctement définies.

    kubectl describe pod pod1 | grep -A 2 Environment

    Résultat attendu :

        Environment:
          USERNAME:                 <set to the key 'username' in secret 'secret-test'>  Optional: false
          PASSWORD:                 <set to the key 'password' in secret 'secret-test'>  Optional: false

Console

  1. Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.

  2. Sur la page Clusters, cliquez sur le nom du cluster cible. Dans le volet de navigation de gauche, choisissez Workloads > Deployments.

  3. Sur la page , cliquez sur .

    Remarque

    Pour plus d'informations, consultez la rubrique Créer une charge de travail sans état (deployment).

  4. Dans l'onglet , configurez les paramètres selon vos besoins, puis cliquez sur .

  5. Dans l'onglet , sous la section , cliquez sur . Définissez le paramètre type sur . Pour le champ value/value from, sélectionnez le secret créé précédemment. Sélectionnez ensuite la clé à référencer et saisissez un nom pour la variable.