Apicurio-studio: [Pergunta] O servidor keycloak deve usar 7.0.1 mesmo no ambiente Distro Docker-compose?

Criado em 4 nov. 2019  ·  23Comentários  ·  Fonte: Apicurio/apicurio-studio

Estou tentando instalar o KeycloakServer e o Apicurio com Docker-compose.
É melhor não usar o Keycloak Server 7?

Dockerfile

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
Atualize para Keycloak 7 (# 950)
https://github.com/Apicurio/apicurio-studio/commit/fe1d4d3a946e94b0becacb2a3aea18a0c3b7888f

question

Comentários muito úteis

Tentei novamente e funcionou. Possível condição de corrida ou possível confusão da minha parte. De qualquer forma, a mudança de 7.0.1 para 7.0.0 é necessária. Vou cometer essa mudança e encerrar este problema. :)

Todos 23 comentários

Sim, devemos usar o Keycloak 7 - esqueci de atualizar a configuração do docker compose. Vou fazer um teste amanhã e enviar uma atualização.

Entendido. Obrigado pela sua repetição.
Espero seu teste e atualizo meu ambiente para keycloak7.

@EricWittmann
Eu criei uma documentação de configuração aproximada para Apicurio (Docker). PARA SUA INFORMAÇÃO.
Perdoe-me pela tradução automática porque fiz em japonês.

Obrigado @Yuutakasan , adoraria ver!

@chriske Seria possível dar uma olhada na configuração docker-compose? Eu atualizei o keycloak para 7.0.1, mas quando testei, recebi um erro de link de comunicação estranho entre o Keycloak e o Mysql.

@EricWittmann
Obrigado Eric por manter um software muito útil. Obrigado como sempre!
O Nginx foi adicionado para realizar a comunicação SSL, e esse método foi alcançado por tentativa e erro, portanto, não sei se esse é o método de configuração correto, mas irei compartilhá-lo, pois pode ser útil.

Documento de configuração do Apicurio docker em inglês (google transrater)
https://drive.google.com/open?id=1TugdgjqGHwHFcBN8-b3Ov-7eHIMdoT3DUDVjwbyB2NE
Documento de configuração do docker Apicurio japonês
https://drive.google.com/open?id=1zYkkpRm5a0OD1dQkTelUeud5vqVzYGoYaPMNENEQmGk

@EricWittmann
Esqueci minhas configurações de compartilhamento do GoogleDrive. Eu concedi acesso a todos.

Isso é muito bom! Tentarei passar algum tempo examinando isso com mais detalhes quando puder. Obrigada.

Oi!

@EricWittmann Vou tentar conferir no final de semana! Espero que seja algum problema menor.

@Yuutakasan , obrigado pelo seu trabalho! Acabei de ler e tenho uma pergunta: você adicionou endereços IP fixos à configuração do nginx. Como você pode ter certeza de que os contêineres receberão esses endereços? Acho que você deve usar os nomes de contêiner como nomes de host nessa configuração. Ou apenas perdi algo importante no seu documento?

@chriske Obrigado por ler meu documento. Eu corrigi agora porque houve um pequeno erro quando li novamente. Como a comunicação com o contêiner é feita por vau de porta, o contêiner não precisa saber o endereço IP. É a resposta que você precisa agora?

@chriske
Coloquei {IP_OF_YOUR_HOST} neste capítulo na configuração do Nginx.
https://github.com/Apicurio/apicurio-studio/blob/master/distro/docker-compose/Readme.md#script -based-setup

Ei @chriske , você já teve a chance de olhar e / ou testar a última composição do docker do Apicurio? Estou me perguntando se você obtém o mesmo erro que eu recebo em KC e o que você pode fazer a respeito.

Olá @EricWittmann , desculpe a demora!

Acabei de verificar e encontrei um problema de handshake entre o MySQL e o KeyCloak nos logs.

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)

Vou procurar uma configuração adequada do docker para o KeyCloak 7 e tentar nossa configuração com ele.

Depois de pesquisar no Google, encontrei este problema:
https://developer.jboss.org/thread/280802?_sscc=t

Em primeiro lugar, tentei atualizar o MySQL para 8.0.12. Mas eu tive que experimentar, o KeyCloak não funciona com o 8.x, com base neste problema:

https://issues.jboss.org/browse/KEYCLOAK-7655?attachmentOrder=desc

Então, eu voltei para a primeira edição, e eles sugeriram voltar para o keycloak 7.0.0
Eu tentei e funcionou como um encanto. Você também pode testar @EricWittmann ?

Vou tentar. Obrigado por fazer a investigação.

@chriske OK, eu tentei (acabei de atualizar o keycloak Dockerfile para usar 7.0.0 em vez de 7.0.1). Mas eu recebi um erro de inicialização do Keycloak ao conectar ao mysql (embora diferente):

https://gist.github.com/EricWittmann/81e4ad8eff5eb4cb05d34b066e7e0db7

@EricWittmann É muito estranho :( Tentei de novo e

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)

O que eu fiz:

  • docker system prune --volumes
  • ./reset_env.sh
  • alterou a versão do KeyCloak no DockerFile para 7.0.0
  • docker run -v $ (pwd): / apicurio chriske / apicurio-setup- image: último bash /apicurio/setup.sh 10.16.0.54 mysql
  • ./start-mysql-environment.sh

Ok, vou tentar de novo - mas foi o que fiz também. :) Apenas com um endereço IP diferente.

Tentei novamente e funcionou. Possível condição de corrida ou possível confusão da minha parte. De qualquer forma, a mudança de 7.0.1 para 7.0.0 é necessária. Vou cometer essa mudança e encerrar este problema. :)

Obrigado! :)

Obrigado por descobrir tudo.

Corrigido em: https://github.com/Apicurio/apicurio-studio/commit/eaf49cce205fe3ae991be0aa8877b7f7dd55ada3

E antes disso: https://github.com/Apicurio/apicurio-studio/commit/f42e72e0f20 relevant206de5f1d0627ae65059a6d226#diff -dbfd402024fb442e45cde2cdaf95a006

De nada! :)

Esta página foi útil?
0 / 5 - 0 avaliações