无法使用 Kong Ingress Controller 后面的密钥斗篷访问管理控制台页面
Can't access Administration Console page with keycloak behind Kong Ingress Controller
我在 Kong Ingress Controller 后面安装了 Keycloak。
我可以在我的 {url}/auth/ 看到 keycloak 欢迎页面。但是,当我单击管理控制台时,我被重定向到 {url}:8443/auth/admin/master/console/
当我点击管理控制台时,我应该被重定向到 {url}/auth/admin/master/console/
当我在 minikube 上安装 keycloak(带 helm)时,在不使用入口和负载均衡器的情况下将服务公开为 NodePort 服务,我能够访问管理控制台页面。
我在这个 link -> https://github.com/codecentric/helm-charts/issues/17
中有关于这个问题的详细信息
我被困在这个问题中,不知道如何解决这个问题。
我可能在一年前遇到过这个问题,我记得那个愚蠢的重定向但我没有使用 Kong Ingress Controller,只是一个普通的 Kong。我遇到的问题是 Kong 以非特权用户身份运行,无法绑定到低端口号。所以 Kong 绑定到 8443 ssl 并将愚蠢的重定向从 443 到 8443。我通常无法修复它并重新发明了轮子。
我为 Kong 使用了端口 80 和 443:
ports:
- name: kong-proxy
containerPort: 80
- name: kong-proxy-ssl
containerPort: 443
- name: kong-admin
containerPort: 8001
- name: kong-admin-ssl
containerPort: 8444
然后定义新端口和功能:
securityContext:
capabilities:
add:
- NET_BIND_SERVICE
env:
- name: KONG_PROXY_LISTEN
value: 0.0.0.0:80, 0.0.0.0:443 ssl
- name: KONG_ADMIN_LISTEN
value: 0.0.0.0:8001, 0.0.0.0:8444 ssl
在那之后那个愚蠢的重定向就消失了。
希望对您有所帮助。
更新
抱歉,忘记提及要使端口 80 和 443 正常工作,我使用以下行构建自定义 Docker 映像:
FROM kong:1.1.1-centos
RUN chown -R kong:kong /usr/local/kong \
&& setcap 'cap_net_bind_service=+ep' /usr/local/bin/kong \
&& setcap 'cap_net_bind_service=+ep' /usr/local/openresty/nginx/sbin/nginx
我在 Kong Ingress Controller 后面安装了 Keycloak。 我可以在我的 {url}/auth/ 看到 keycloak 欢迎页面。但是,当我单击管理控制台时,我被重定向到 {url}:8443/auth/admin/master/console/
当我点击管理控制台时,我应该被重定向到 {url}/auth/admin/master/console/
当我在 minikube 上安装 keycloak(带 helm)时,在不使用入口和负载均衡器的情况下将服务公开为 NodePort 服务,我能够访问管理控制台页面。
我在这个 link -> https://github.com/codecentric/helm-charts/issues/17
中有关于这个问题的详细信息我被困在这个问题中,不知道如何解决这个问题。
我可能在一年前遇到过这个问题,我记得那个愚蠢的重定向但我没有使用 Kong Ingress Controller,只是一个普通的 Kong。我遇到的问题是 Kong 以非特权用户身份运行,无法绑定到低端口号。所以 Kong 绑定到 8443 ssl 并将愚蠢的重定向从 443 到 8443。我通常无法修复它并重新发明了轮子。
我为 Kong 使用了端口 80 和 443:
ports:
- name: kong-proxy
containerPort: 80
- name: kong-proxy-ssl
containerPort: 443
- name: kong-admin
containerPort: 8001
- name: kong-admin-ssl
containerPort: 8444
然后定义新端口和功能:
securityContext:
capabilities:
add:
- NET_BIND_SERVICE
env:
- name: KONG_PROXY_LISTEN
value: 0.0.0.0:80, 0.0.0.0:443 ssl
- name: KONG_ADMIN_LISTEN
value: 0.0.0.0:8001, 0.0.0.0:8444 ssl
在那之后那个愚蠢的重定向就消失了。
希望对您有所帮助。
更新
抱歉,忘记提及要使端口 80 和 443 正常工作,我使用以下行构建自定义 Docker 映像:
FROM kong:1.1.1-centos
RUN chown -R kong:kong /usr/local/kong \
&& setcap 'cap_net_bind_service=+ep' /usr/local/bin/kong \
&& setcap 'cap_net_bind_service=+ep' /usr/local/openresty/nginx/sbin/nginx