0

我正在使用Operator(版本 13.0.0)安装 Keycloak。更新后的代码有主题相关的东西github 存储库,并且很好地支持自定义主题集成。我们只需要一个自定义所在的 URL theme。我尝试了它并且完美地工作。

但是,如果我们在某个本地目录而不是某个公共 URL 上有主题怎么办。那么我们应该如何theme在 Keycloak 中上传呢?

我也尝试过使用文件 URL 和文件路径,但对我不起作用。

Keycloak.yaml

apiVersion: keycloak.org/v1alpha1
kind: Keycloak
metadata:
  name: keycloak-test
  labels:
    app: keycloak-test
spec:
  instances: 1
  extensions:
    - https://SOME-PUBLIC-URL/keycloak-themes.jar                    
  externalAccess:
    enabled: False
  podDisruptionBudget:
    enabled: True
4

2 回答 2

2

我们可以使用以下步骤在 keycloak operator (v13.0.0) 中添加自定义 keycloak 主题:

  1. 使用此处显示的步骤为您的自定义主题创建一个 jar 文件部署 Keycloak 主题
  2. 使用以下命令创建 jar 的 kubernetes configmap
kubectl create cm customtheme --from-file customtheme.jar
  1. 要使用上面的 configmap 更新Keycloak.yaml并添加以下代码块
  keycloakDeploymentSpec:
    experimental:
      volumes:
        defaultMode: 0777
        items:
          - name: customtheme
            mountPath: /opt/jboss/keycloak/standalone/deployments/custom-themes
            subPath: customtheme.jar
            configMaps:
              - customtheme

注意:确保主题大小小于 1MB。

于 2021-06-07T13:02:20.220 回答
1

您可以使用要在 Keycloak 中使用的自定义主题创建一个 .tar 文件(例如custom_theme.tar),然后将卷挂载到存储 Keycloak 主题的文件夹( /opt/jboss/keycloak/themes/my_custom_theme),然后将 .tar 文件复制到将本地文件夹中的自定义主题放入 Keycloak 容器中。

您可以在此处找到此方法的完整示例。

于 2021-05-18T18:49:52.613 回答