为Kubernetes中的KeyClope的重定向和内部查找指定备用URL

为Kubernetes中的KeyClope的重定向和内部查找指定备用URL,kubernetes,spring-security,keycloak,kubernetes-ingress,Kubernetes,Spring Security,Keycloak,Kubernetes Ingress,所以我有一个spring引导应用程序,它作为一个pod部署在Kubernetes中。我还有一个运行在Kubernetes(相同名称空间)中的keydape服务器。我在通过本地计算机上的浏览器登录应用程序时遇到问题 因此,我指定了auth服务器url=http://keycloak-service-name:8080/auth,这样我的pod就可以访问它,它也可以。当我尝试登录到我的应用程序时,问题就会出现,因为它会重定向到http://keycloak-service-name:8080/aut

所以我有一个spring引导应用程序,它作为一个pod部署在Kubernetes中。我还有一个运行在Kubernetes(相同名称空间)中的keydape服务器。我在通过本地计算机上的浏览器登录应用程序时遇到问题

因此,我指定了
auth服务器url=http://keycloak-service-name:8080/auth
,这样我的pod就可以访问它,它也可以。当我尝试登录到我的应用程序时,问题就会出现,因为它会重定向到
http://keycloak-service-name:8080/auth
这是Kubernetes服务,无法在本地解决

我还设置了入口,所以我尝试将auth URL指定为入口
http://keycloak-ingress/auth
,但我的pod无法访问此文件,并出现错误“无法从…加载URL”,因为它无法解析入口域。但是,我可以从浏览器访问入口

我觉得我在这里遗漏了一些非常明显的东西,我需要一种可以被集群内的pod和集群外的pod访问的URL。或者,也许有某种方法可以为我的应用程序正在进行的“加载URL”的查找指定一个单独的URL


我成功实现这一点的唯一方法是对外公开服务并使用外部IP和端口,但这不是一个可接受的解决方案。

我发现KeyClope服务器中有一个前端URL参数。我将其设置为指向我的入口,并将身份验证服务器url设置为指向我的KeyClope服务名称。这解决了我的问题,当我的应用程序在内部进行查找时,它使用服务,但当我访问前端时,它使用入口