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

如何在ArgoCD参数中转义美元符号$?

ArgoCD + Helm 部署中含$符号的配置值处理方案

方法1:用YAML单引号包裹值

如果是通过values.yaml传递配置,直接用单引号把带$的值包起来即可。YAML单引号内的内容会被当作纯文本,ArgoCD和Helm都不会解析其中的$符号:

# values.yaml
customValue: 'name$server'

最终生成的Kubernetes YAML里,这个值会完整保留为name$server。

方法2:ArgoCD Helm参数里用三重转义

要是用ArgoCD的helm.parameters(对应helm --set参数)传递值,得对$做三重转义:

# ArgoCD Application 配置
spec:
  source:
    helm:
      parameters:
        - name: customValue
          value: name\\\$server

解析流程:ArgoCD先把\\\$转成\$,Helm拿到后再转成$,最终得到目标值name$server。

方法3:修改Helm模板用raw语法

如果你能修改Helm Chart的模板,在渲染该值的地方用Helm的raw块包裹,阻止Helm解析$符号:

# Helm模板示例(如configmap.yaml)
apiVersion: v1
kind: ConfigMap
metadata:
  name: demo-config
data:
  targetKey: {{- raw -}}{{ .Values.customValue }}{{- end -}}

这样不管values里的内容有没有$,都会原封不动渲染到YAML里。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 22:08:17