如何在Helm的values.yaml中配置K8s Manifest的NFS存储卷?
Helm Charts中NFS卷的values.yaml配置及模板引用
1. 在values.yaml中定义NFS配置
把NFS服务器地址和路径抽成可配置变量,方便后续自定义修改:
# values.yaml # ddclient的NFS存储配置 volumes: ddclientConfig: nfs: server: 10.0.0.101 path: /home/main/ddclient
2. 在Deployment模板中引用values值
修改templates/deployment.yaml文件,将原Manifest里硬编码的NFS配置替换为Helm模板变量,部署时会自动读取values.yaml中的配置:
# templates/deployment.yaml spec: containers: - image: linuxserver/ddclient imagePullPolicy: Always name: ddclient volumeMounts: - mountPath: /config name: ddclient-config volumes: - name: ddclient-config nfs: path: {{ .Values.volumes.ddclientConfig.nfs.path }} server: {{ .Values.volumes.ddclientConfig.nfs.server }}
额外说明
这种配置方式的优势在于,后续更换NFS路径或服务器时,只需修改values.yaml,不用改动模板文件。如果需要更灵活的配置(比如可选启用NFS),还可以在values.yaml中添加开关,配合模板里的if语句实现条件化部署。
内容的提问来源于stack exchange,提问作者petwri
相关产品推荐
相关产品推荐

