为了账号安全,请及时绑定邮箱和手机立即绑定

如何在keycloak中动态编辑standalone.xml文件

如何在keycloak中动态编辑standalone.xml文件

紫衣仙女 2023-06-04 10:23:51
我正在尝试通过 docker 编辑 standalone.xml 并尝试添加,但 keycloak 正在使用它的standalone.xml. 但我能够看到 standalone.xml 文件中的更改。我需要在 standalone.xml 文件中添加这一行 <provider>module:org.keycloak.examples.event-sysout</provider>还尝试了热部署但无法获取第三方库代码
查看完整描述

4 回答

?
富国沪深

TA贡献1790条经验 获得超9个赞

首先,它似乎默认使用 standalone-ha.xml 在 docker 容器中。您可以在 /opt/jboss/tools/docker-entrypoint.sh 中找到它。其次,我认为更改配置文件后你必须重新启动 keycloak 服务器(容器)。


不确定“动态”是什么意思。但是在本地修改文件并构建自定义 docker 镜像会更容易。Dockerfile 可能如下所示:


FROM jboss/keycloak:6.0.1

ADD <path on your system>/standalone-ha.xml /opt/jboss/keycloak/standalone/configuration/standalone-ha.xml


查看完整回答
反对 回复 2023-06-04
?
沧海一幻觉

TA贡献1824条经验 获得超5个赞

如果没有 jboss-cli,您不能在 docker 镜像上替换或覆盖 standalone-ha.xml/standalone.xml。只需要创建一个 sh 文件,放在 startup-script 文件夹中。在初始化期间,它将启动并配置您的文件。


keycloak-cli


embed-server --server-config=standalone-ha.xml --std-out=echo 

batch


/subsystem=keycloak-server:list-add(name=providers, value=module:org.keycloak.examples.event-sysout)


run-batch 

stop-embedded-server

文件


FROM jboss/keycloak:latest


COPY keycloak.cli /opt/jboss/startup-scripts/keycloak.cli


查看完整回答
反对 回复 2023-06-04
?
DIEA

TA贡献1820条经验 获得超2个赞

可能有点晚了。但我发现您可以在 dockerfile 上进行编辑。


FROM quay.io/keycloak/keycloak:11.0.0


RUN sed -i -E "s/(<staticMaxAge>)2592000(<\/staticMaxAge>)/\1\-1\2/" /opt/jboss/keycloak/standalone/configuration/standalone.xml

RUN sed -i -E "s/(<cacheThemes>)true(<\/cacheThemes>)/\1false\2/" /opt/jboss/keycloak/standalone/configuration/standalone.xml

RUN sed -i -E "s/(<cacheTemplates>)true(<\/cacheTemplates>)/\1false\2/" /opt/jboss/keycloak/standalone/configuration/standalone.xml


RUN sed -i -E "s/(<staticMaxAge>)2592000(<\/staticMaxAge>)/\1\-1\2/" /opt/jboss/keycloak/standalone/configuration/standalone-ha.xml

RUN sed -i -E "s/(<cacheThemes>)true(<\/cacheThemes>)/\1false\2/" /opt/jboss/keycloak/standalone/configuration/standalone-ha.xml

RUN sed -i -E "s/(<cacheTemplates>)true(<\/cacheTemplates>)/\1false\2/" /opt/jboss/keycloak/standalone/configuration/standalone-ha.xml

参考: https: //github.com/anthonny/kit-keycloak-theme/blob/master/Dockerfile


查看完整回答
反对 回复 2023-06-04
?
慕娘9325324

TA贡献1783条经验 获得超4个赞

你应该去那个正在运行的 docker 容器并在那里进行更改。最好的是,使用 Kitematic 之类的 docker 管理器

选择正在运行的keycloak容器,点击EXEC图标,cd keycloak/standalone/configuration, vi standalone.xml, :wq退出,通过Kitematic重启docker镜像,应该可以了


查看完整回答
反对 回复 2023-06-04
  • 4 回答
  • 0 关注
  • 159 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信