【问题标题】:Add to keycloak k8s helm chart environment parameters of outside Postgres database添加到外部 Postgres 数据库的 keycloak k8s helm chart 环境参数
【发布时间】:2017-09-20 12:03:17
【问题描述】:

我是 Kubernetes 和 helm-charts 的新手,并试图让 Keycloak 将数据保存在 Postgres 中而不是 H2 中(因为他默认这样做)。 Postgres 将由单独的 helm 图表创建。首先我通过命令创建 Postgres:

helm install --name=postgres-keycloak stable/postgresql

然后我查看新的 Postgres 服务“内部端点”参数。并尝试将此参数添加到 Keycloak 的 helm-chart 中。这是 values.yaml 部分:

Service:
  Name: keycloak-new
  Port: 8080
  Type: ClusterIP
  postgresAddr: postgres-keycloak-postgresql
  postgresPort: 5432

然后在模板文件夹中我添加到 service.yaml:

env:
 - name: POSTGRES_PORT_5432_TCP_ADDR
   value: "{{ .Values.Service.postgresAddr }}"
 - name: POSTGRES_PORT_5432_TCP_PORT
   value: "{{ .Values.Service.postgresPort }}"

然后我通过“helm package keycloak”命令创建keyclaok包,并安装:

helm install --debug  --name=keycloak-new keycloak-0.1.0.tgz

失败并出现错误:

[debug] Created tunnel using local port: '49927'
[debug] SERVER: "localhost:49927"
[debug] Original chart version: ""
[debug] CHART PATH: /Users/user/helm-charts/keycloak-0.1.0.tgz
Error: error validating "": error validating data: found invalid field env for v1.ServiceSpec

谁知道我做错了什么?或者我想念什么?

【问题讨论】:

    标签: docker kubernetes keycloak kubernetes-helm


    【解决方案1】:

    你的 env 应该被声明为 PodSpec 的一部分(你可以在 Pod、ReplicaSet、Deployment 等对象中找到它)而不是在一个只为你的流量定义一种内部负载均衡器/路由器的服务中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-17
      • 2017-09-08
      • 1970-01-01
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 2022-10-17
      • 1970-01-01
      相关资源
      最近更新 更多