[英]helm: how to mount configMap if not supported by values.yaml?
我正在使用他们的掌舵图https://artifacthub.io/packages/helm/truecharts/authelia部署 authelia。
我需要将 ConfigMap 挂载到 authelia 容器中的特定文件,但是这不能作为values.yaml
中的模板值使用。
我正在努力理解做这样的事情的推荐方法是什么......这可以概括为“我如何定制一个超出values.yaml
允许范围的 helm 部署?”
我只能想到从图表中获取所有 yaml,进行我需要的更改并像那样部署......这不是最好的方法
###############################################################
# Users Database #
###############################################################
# This file can be used if you do not have an LDAP set up.
# List of users
users:
admin:
displayname: "admin"
password: "redacted"
email: admin@redacted
groups:
- admins
- dev
spec:
template:
spec:
containers:
- name: authelia
volumeMounts:
- name: authelia-users-database
mountPath: /etc/config
volumes:
- name: authelia-users-database
configMap:
name: authelia-users-database
authentication_backend:
file:
enabled: true
path: /etc/config/users_database.yml
$ helm repo add authelia https://charts.authelia.com
$ helm repo update
$ helm upgrade --install authelia authelia/authelia --values values/authelia.yaml --version 0.8.34
$ kubectl create configmap authelia-users-database --from-file=users_database.yml --dry-run -o yaml | kubectl apply -f -
$ kubectl patch daemonset authelia --patch-file patches/authelia_users_database.yaml
我想说你可以尝试使用kubectl patch
之后将 ConfigMap 挂载到 authelia 容器。 在这里查看更多信息。
因此,使用 Deployment、Replicaset 或 Statefulset 创建一个.yml
文件并添加 ConfigMap 配置(只需根据 Helm 部署检查哪个 Kubernetes 对象最适合您)。 使用 Helm 图表部署应用程序后; 运行命令kubectl patch -f your-deployment-file.yml
。
将 helm 包想象为一个 java 包,您无法实例化尚未在该包中定义的对象,并且您正在尝试在 helm 中执行相同的操作。
如果你不熟悉helm ,helm 是一个工具,可以帮助你在特定的 k8s 资源清单上创建抽象,它们根据你在values.yaml
中的定义进行配置,每个 helm 图表都有自己的模板定义,所以如果你有什么想要配置但在该图表中尚不可用,您可以通过运行下载图表:
helm pull truecharts/authelia
# or
helm fetch truecharts/authelia
提取包然后添加您的自定义模板,正如您所说,您试图在部署中引用配置文件,因此在模板目录中的deployment.yaml中添加该配置的引用,然后如果您的定义和语法正确,您可以添加您在values.yaml
中的规范。
不确定你想如何绑定你的配置,但这会响应你的用例吗?
envFrom:
- configMapRef:
name: {{ .Values.configmap }}
值.yaml
...
configmap: myconfigmap
确保指定的 configmap 名称存在,以便一切正常
确保阅读 helm 文档,了解如何创建自己的模板
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.