You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vault Agent注入器:仅使用Init容器(禁用Sidecar)

仅用Vault Init容器注入环境变量、禁用Sidecar的实现方案

要实现只在启动阶段通过Vault注入环境变量、禁用Sidecar容器,你可以通过以下Pod注解配置:

  • vault.hashicorp.com/agent-inject-sidecar: "false":明确禁用Sidecar容器
  • vault.hashicorp.com/agent-inject-init: "true":显式启用Init容器(默认已启用,加上配置更稳妥)

配置示例(Deployment片段)

apiVersion: apps/v1
kind: Deployment
metadata:
  name: your-app
spec:
  template:
    metadata:
      annotations:
        vault.hashicorp.com/agent-inject: "true"
        vault.hashicorp.com/role: "your-vault-role"
        vault.hashicorp.com/agent-inject-sidecar: "false"
        vault.hashicorp.com/agent-inject-init: "true"
        # 环境变量注入的示例配置
        vault.hashicorp.com/agent-inject-secret-db-creds: "secret/path/to/db-creds"
        vault.hashicorp.com/agent-inject-template-db-creds: |
          {{- with secret "secret/path/to/db-creds" }}
          export DB_USER="{{ .Data.data.username }}"
          export DB_PASS="{{ .Data.data.password }}"
          {{- end }}
    spec:
      containers:
      - name: your-app-container
        image: your-app-image
        command: ["sh", "-c", ". /vault/secrets/db-creds && ./your-app"]

说明

  • 配置完成后,Vault仅会启动Init容器,在应用容器启动前将密钥渲染到默认共享卷/vault/secrets中,应用容器通过加载卷内脚本即可获取环境变量。
  • 部署后可执行kubectl describe pod <pod-name>验证:只会看到vault-agent-init类型的Init容器,不会出现vault-agent侧车容器。

内容的提问来源于stack exchange,提问作者Cruncher

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 06:02:44