我正在尝试使用 Docker-compose 安装 KeycloakServer 和 Apicurio。
最好不要使用 Keycloak Server 7 吗?
文件
FROM jboss/keycloak:4.8.3.Final
ADD apicurio /opt/jboss/keycloak/themes/apicurio
https://github.com/Apicurio/apicurio-studio/blob/master/distro/docker-compose/keycloak/Dockerfile
4.3.0
升级到 Keycloak 7 (#950)
https://github.com/Apicurio/apicurio-studio/commit/fe1d4d3a946e94b0becacb2a3aea18a0c3b7888f
是的,我们应该使用 Keycloak 7 - 我忘了更新 docker compose 配置。 明天我会进行测试并推送更新。
明白了。 感谢您的重播。
我等待您的测试并将我的环境升级到keycloak7。
@埃里克·维特曼
我已经为 Apicurio (Docker) 创建了粗略的设置文档。 供参考。
请原谅我用机器翻译,因为我是用日语做的。
谢谢@Yuutakasan我很想看!
@chriske您可以查看
@埃里克·维特曼
感谢 Eric 维护了一个非常有用的软件。 一如既往地谢谢你!
加入Nginx来进行SSL通信,这个方法是通过反复试验得出的,所以我不知道这是否是正确的设置方法,但我会分享它,因为它可能会有所帮助。
Apicurio docker setup 文档英文(google transrater)
https://drive.google.com/open?id=1TugdgjqGHwHFcBN8-b3Ov-7eHIMdoT3DUDVjwbyB2NE
Apicurio docker 安装文件日文
https://drive.google.com/open?id=1zYkkpRm5a0OD1dQkTelUeud5vqVzYGoYaPMNENEQmGk
@埃里克·维特曼
我忘记了我的 GoogleDrive 共享设置。 我向所有人授予了访问权限。
这太棒了! 如果可以,我会尝试花一些时间更彻底地完成它。 谢谢你。
你好!
@EricWittmann我会在周末尝试检查它! 我希望这是一些小问题。
@Yuutakasan ,感谢您的工作! 我刚刚阅读了它,我有一个问题:您在 nginx 配置中添加了修复 IP 地址。 您如何确保容器将获得这些地址? 我认为您应该在该配置中使用容器名称作为主机名。 或者我只是错过了您文档中的重要内容?
@chriske感谢您阅读我的文档。 我现在更正了,因为我再次阅读时有一个小错误。 由于与容器的通信是通过端口涉水完成的,因此容器不需要知道 IP 地址。 是你现在需要的答案吗?
@克里斯克
我把本章的 {IP_OF_YOUR_HOST} 放到了 Nginx 配置中。
https://github.com/Apicurio/apicurio-studio/blob/master/distro/docker-compose/Readme.md#script -based-setup
嘿@chriske你有没有机会查看和/或测试最新的 Apicurio docker compose? 我想知道您在 KC 中是否遇到与我相同的错误,以及您可能会如何解决。
嘿@EricWittmann ,抱歉耽搁了!
我刚刚查看了一下,在日志中发现 MySQL 和 KeyCloak 之间存在握手问题。
jboss-keycloak-mysql_1 | 2019-11-23T07:26:15.557157Z 2 [Note] Bad handshake
jboss-keycloak_1 | 07:26:15,566 WARN [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (ServerService Thread Pool -- 65) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: IJ031084: Unable to create connection
jboss-keycloak_1 | at [email protected]//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:345)
jboss-keycloak_1 | at [email protected]//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:352)
jboss-keycloak_1 | at [email protected]//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:287)
jboss-keycloak_1 | at [email protected]//org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.createConnectionEventListener(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:1325)
jboss-keycloak_1 | at [email protected]//org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreConcurrentLinkedDequeManagedConnectionPool.getConnection(SemaphoreConcurrentLinkedDequeManagedConnectionPool.java:499)
我会去为 KeyCloak 7 寻找合适的 docker 配置,然后尝试我们的配置。
经过一番谷歌搜索,我发现了这个问题:
https://developer.jboss.org/thread/280802?_sscc=t
首先,我尝试将 MySQL 升级到 8.0.12。 但我不得不体验到,基于这个问题,KeyCloak 根本不适用于 8.x:
https://issues.jboss.org/browse/KEYCLOAK-7655?attachmentOrder=desc
所以,我回到了第一个问题,他们建议回到 keycloak 7.0.0
我试过了,它就像一个魅力。 你也可以自己测试@EricWittmann吗?
我会试试的。 谢谢你做侦探。
@chriske好的,我试了一下(刚刚更新了 keycloak Dockerfile
以使用 7.0.0 而不是 7.0.1)。 但是我在连接到 mysql 时仍然遇到 Keycloak 启动错误(尽管有所不同):
https://gist.github.com/EricWittmann/81e4ad8eff5eb4cb05d34b066e7e0db7
@EricWittmann这真的很奇怪:( 我又试了一次,它有效。
jboss-keycloak_1 | 15:35:19,604 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0212: Resuming server
jboss-keycloak_1 | 15:35:19,606 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
jboss-keycloak_1 | 15:35:19,606 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
jboss-keycloak_1 | 15:35:19,606 INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: Keycloak 7.0.0 (WildFly Core 9.0.2.Final) started in 62711ms - Started 683 of 988 services (701 services are lazy, passive or on-demand)
我做了什么:
好的,我会再试一次——但这也是我所做的。 :) 只是使用不同的 IP 地址。
再次尝试,它奏效了。 可能的竞争条件,或我可能出现的混乱。 无论哪种方式,从 7.0.1 切换到 7.0.0 都是必要的。 所以我将提交该更改并关闭此问题。 :)
谢谢! :)
谢谢你把一切都弄清楚了。
别客气! :)
最有用的评论
再次尝试,它奏效了。 可能的竞争条件,或我可能出现的混乱。 无论哪种方式,从 7.0.1 切换到 7.0.0 都是必要的。 所以我将提交该更改并关闭此问题。 :)