gpt4 book ai didi

docker - Keycloak docker重启后如何保持infinispan Session

转载 作者:行者123 更新时间:2023-12-02 19:19:34 25 4
gpt4 key购买 nike

我有一个正在运行的 keycloak 8 的 docker,但是每当我重新启动它时,所有非离线 session 都会消失。结果,每当我来更新 keycloak 时,所有用户都会断开连接。

原因:

  • 我已阅读 this thread在这里并了解为什么不保留访问 token (主要是性能问题)。

  • 作为解决方案,我想使用集群(推荐 here),并且我理解,核心部分只能很好地管理 Infinispan。

    想法:
  • 我首先想将该 infinispan 存储在 docker 容器之外(在一个卷中),然后搜索 JBoss 在 docker 中将 Infinispan 保存在哪里,但我没有找到任何东西。
  • 其次,我考虑了一个 SPI 来管理外部用户 session ,但这似乎不是正确的解决方案,因为 infinispan 已经做得很好了。
  • this article about Cross-Datacenter support in Keycloak 的帮助下设置集群和 this other one about Keycloak Cross Data Center Setup in AWS似乎是一个很好的起点,但我实际上仍在使用 dockers,我不确定从这些教程中构建 docker 图像是否是一个更好的主意。

  • 欢迎任何更多想法:)

    最佳答案

    刚刚我第二次尝试使用 docker cluster,但现在使用 docker swarm 和来自 here 的信息:

    The PING discovery protocol is used by default in udp stack (which is used by default in standalone-ha.xml). Since the Keycloak image runs in clustered mode by default, all you need to do is to run it:

    docker run jboss/keycloak

    If you run two instances of it locally, you will notice that they form a cluster.


    我已经使用 docker stack 在集群模式下部署了非常简单的 3 个 keycloak 实例,并带有一个外部数据库(postgres),并且运行良好。
    更简单地说,keycloak docker 在使用集群时已经处理了这个用例。
    有关集群用例的更多信息,请参阅本教程以了解如何 setup Keycloak Cluster

    关于docker - Keycloak docker重启后如何保持infinispan Session,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60809539/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com