【问题标题】:Retrieve database service name of helm subchart检索 helm 子图的数据库服务名称
【发布时间】:2021-02-05 20:29:46
【问题描述】:

我正在将 postgres 作为依赖项安装在我的 helm 图表中,并且需要检索连接详细信息。

kubernetes 中的 Postgres 连接 URI 的形式为: postgres://username:password@servicename.namespace.svc.cluster.local:port/dbname

usernamepasswordnamespaceportdbname 都可以通过.Values.postgresql.....Release.Namespace 轻松访问,但service name is initialized 使用子图表模板common.names.fullname .

访问子图表模板是surprisingly not a thing,由于上下文变化,可能无论如何都无法工作。

配置我的应用程序以访问数据库的简单方法是什么?

【问题讨论】:

    标签: kubernetes-helm


    【解决方案1】:

    我通常满足于观察子图表遵循命名其对象{{ .Release.Name }}-{{ .Chart.Name }} 的典型 Helm 约定。如果子图表使用该约定,并且我从名为 postgresql 的子图表中获取数据库,那么我可以在模板代码中对该值进行硬编码:

    - name: PGHOST
      value: '{{ .Release.Name }}-postgresql'
    

    我的经验通常是 Bitnami 图表(以及较旧的 stable 图表)在使用语义版本控制方面做得很好,所以如果这个名称发生变化,那么图表的主要版本就会改变。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-11
      • 1970-01-01
      • 1970-01-01
      • 2012-07-05
      • 1970-01-01
      • 2011-05-09
      • 1970-01-01
      相关资源
      最近更新 更多