所以我有一个问题,让keycloak 3.2.1在kong(0.10.3)后面工作,这是一个基于nginx的反向代理.
场景是:
我通过我的网关路由来呼叫keycloak https://{gateway}/auth
,它向我显示带有keycloak徽标的入口点,链接到管理控制台等 - 到目前为止一切都很好.
但是当点击管理控制台 - >调用时https://{gateway}/auth/admin/master/console/
,keycloak尝试通过http加载其css/js(参见下面的screenie),我的浏览器因为混合内容而阻止了.
我四处搜索并找到了这个帖子:keycloak apache服务器配置带有'混合内容'问题导致这个github repo:https://github.com/dukecon/keycloak_postgres_https
从那时起,我尝试将其cli成功集成到我的dockerfile中(没有更改文件的内容,只是将它们复制到我的repo中并从dockerfile添加/运行它们).这是我的dockerfile现在:
FROM jboss/keycloak-postgres:3.2.1.Final
USER root
ADD config.sh /tmp/
ADD batch.cli /tmp/
RUN bash /tmp/config.sh
#Give correct permissions when used in an OpenShift environment.
RUN chown -R jboss:0 $JBOSS_HOME/standalone && \
chmod -R g+rw $JBOSS_HOME/standalone
USER jboss
EXPOSE 8080
Run Code Online (Sandbox Code Playgroud)
所以我现在没有想法,希望你能帮助我:
如何告诉keycloak在这里通过https调用'css-files?
我是否需要更改cli脚本中的内容?
这是脚本的内容:
config.sh:
#!/bin/bash -x
set -e
JBOSS_HOME=/opt/jboss/keycloak
JBOSS_CLI=$JBOSS_HOME/bin/jboss-cli.sh
JBOSS_MODE=${1:-"standalone"}
JBOSS_CONFIG=${2:-"$JBOSS_MODE.xml"}
echo "==> Executing..."
cd /tmp
$JBOSS_CLI --file=`dirname …
Run Code Online (Sandbox Code Playgroud)