卷“realm-secret”的 MountVolume.SetUp 失败:未找到机密“realm-secret”

Ant*_*ony 5 kubernetes keycloak

我正在尝试在我的 minikube 上启动并运行 keycloak。

我正在安装keycloak

helm upgrade -i -f kubernetes/keycloak/values.yaml keycloak stable/keycloak --set keycloak.persistence.dbHost=rolling-newt-postgresql

我在仪表板中看到一条错误消息:

卷“realm-secret”的 MountVolume.SetUp 失败:未找到机密“realm-secret”

在我的values.yaml我有这个配置:

  extraVolumes: |
    - name: realm-secret
      secret:
        secretName: realm-secret
    - name: theme
      emptyDir: {}
    - name: spi
      emptyDir: {}
  extraVolumeMounts: |
    - name: realm-secret
      mountPath: "/realm/"
      readOnly: true
    - name: theme
      mountPath: /opt/jboss/keycloak/themes/mytheme
    - name: spi
      mountPath: /opt/jboss/keycloak/standalone/deployments
Run Code Online (Sandbox Code Playgroud)

我也有一个realm.json文件。

real.json在安装 keycloak 之前,我需要对这个文件做什么?我怎么做 ?

Shu*_*rma 7

原因是您正在引用一个名为realm-secretin的秘密extraVolumes,但该具有 name 的秘密realm-secret既不是由 helm chart (named stable/keycloak)创建的,也不是由您手动创建的。

您可以在https://github.com/helm/charts/tree/master/stable/keycloak 中轻松找到该图表。

解决方案

values.yaml,现场extraVolumeextraVolumeMount保持提供额外的volume和额外的volumeMount用户,如果他们需要。它们将用于 keycloak pod。

因此,如果您需要提供extraVolumes将安装机密的信息,那么您必须自己创建该机密,因此您需要realm-secret在安装/升级图表的同一命名空间中创建机密。然后才安装/升级图表。

$ kubectl create secret generic realm-secret --namespace=<chart_namespace> --from-file=path/to/realm.json
Run Code Online (Sandbox Code Playgroud)