gpt4 book ai didi

kubernetes - 如何在 Helm 中使用环境/ secret 变量?

转载 作者:行者123 更新时间:2023-12-02 18:34:22 25 4
gpt4 key购买 nike

在我的 helm chart 中,我有一些文件需要输入凭据例如

<Resource
name="jdbc/test"
auth="Container"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://{{ .Values.DB.host }}:{{ .Values.DB.port }};selectMethod=direct;DatabaseName={{ .Values.DB.name }};User={{ Values.DB.username }};Password={{ .Values.DB.password }}"
/>

我创造了一个 secret

Name: databaseinfo
Data:
username
password

然后我创建环境变量以在我的 deployment.yaml 中检索这些 secret :

env:
- name: DBPassword
valueFrom:
secretKeyRef:
key: password
name: databaseinfo
- name: DBUser
valueFrom:
secretKeyRef:
key: username
name: databaseinfo

在我的 values.yaml 或这个其他文件中,我需要能够引用这个 secret /环境变量。我尝试了以下但它不起作用:值.yaml

DB:
username: $env.DBUser
password: $env.DBPassword

最佳答案

您不能使用 helm 将变量从任何模板传递到 values.yaml。只是从 values.yaml 到模板。

您正在寻找的答案由 mehowthe 发布:

部署.yaml =

      env:          
{{- range .Values.env }}
- name: {{ .name }}
value: {{ .value }}
{{- end }}

values.yaml =

env:          
- name: "DBUser"
value: ""
- name: "DBPassword"
value: ""

然后

helm install chart_name --name release_name --set env.DBUser="FOO"--set env.DBPassword="BAR"

关于kubernetes - 如何在 Helm 中使用环境/ secret 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68989479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com