我认为你的问题是
auth-server-url:http://localhost:8180/auth。
localhost当您的应用程序在docker容器中运行时,这实际上具有不同的含义。
在容器内部,它必须是容器的名称,即
keycloak。这有点尴尬,因为当您从要使用的主机连接到keycloak时,
localhost但令牌发行者的URL必须与请求令牌的URL匹配(否则令牌被拒绝),因此最终放入
keycloak您的etc
/ hosts文件。
您在这个问题上相处得很好-我在Activiti工作中遇到了这个问题。您可以找到以同样方式处理它的JHipster项目 -他们说:
为了使一切正常,您需要确保将以下内容添加到您的主机文件中(
/etc/hosts在Mac /
Linux上,c:WindowsSystem32Driversetchosts在Windows上)。127.0.0.1 keycloak这是因为您将使用计算机上的浏览器(名称为
localhost或127.0.0.1)访问应用程序,但是在Docker内部它将在自己的容器中运行,名称为keycloak。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)