当前位置: 首页 > 面试题库 >

使用自定义基本URL为Keycloak Docker配置反向代理

翟学文
2023-03-14
问题内容

如何设置docker keycloak base urlas参数?

我有以下nginx反向代理配置:

server {
    listen 80;
    server_name example.com;

    location /keycloak {
        proxy_pass http://example.com:8087/;
    }
}

当我尝试访问http://example.com/keycloak/时,我得到了一个http://example.com/auth/而不是http://example.com/keycloak/auth/的keycloak
http重定向

有任何想法吗?


问题答案:

刚刚测试了@home,实际上需要添加多个配置:

1 / -e PROXY_ADDRESS_FORWARDING=true
按照文档中的说明使用env运行keycloak容器,这是访问keycloak的代理方式所必需的:

docker run -it --rm -p 8087:8080 --name keycloak -e PROXY_ADDRESS_FORWARDING=true jboss/keycloak:latest

2 /更改keycloak配置文件中的
Web上下文$JBOSS_HOME/standalone/configuration/standalone.xml

默认密钥库配置指向 auth

<web-context>auth</web-context>

然后您可以将其更改为 keycloak/auth

<web-context>keycloak/auth</web-context>

如果您需要为docker自动执行此操作,只需创建一个新的keycloak映像:

FROM jboss/keycloak:latest

USER jboss

RUN sed -i -e 's/<web-context>auth<\/web-context>/<web-context>keycloak\/auth<\/web-context>/' $JBOSS_HOME/standalone/configuration/standalone.xml

3 /在nginx配置中添加一些代理信息(主要用于http / https处理)

location /keycloak {
    proxy_pass http://example.com:8087;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

如果您要将请求从Nginx代理到同一服务器上的keycloak,则建议使用proxy_pass http://localhost:8087;,如果不尝试使用私有网络,则应避免通过外部Web请求进行代理。

希望这可以帮助



 类似资料:
  • 我知道这是N。关于Spring Security的文章,我读了很多关于它的文章,直到我决定发表我的问题,因为--我假设--由于Spring Boot的性质,在引擎盖下面一定隐藏着某种问题,这是我使用的启动版本/安全类型的星座特有的。 让我直接进去。 pom.xml: 我的基本安全配置: 结尾似乎是最有趣的,虽然剩下的也很难看: O.S.S.Authentication.DAO.DAOAuthent

  • 我有一个web应用程序,用户可以在其中指定一个自定义网站,他们宿主显示在页面上的iFrame中。 问题是,我的web应用程序在HTTPS中运行,而iFrames中的as用户网页没有启用SSL,而是在HTTP中运行。这会导致他们的网页被阻止显示混合内容安全警告。 我的想法是在Apache WebServer上设置一个反向代理。这个反向代理将接受如下内容:https://example.com/rev

  • 我使用Kubernetes集群部署了Spring boot应用程序。我已经用springfox配置了swagger。文件* 现在在昂首阔步的页面上,当我使用“试用”按钮,并提交一个应用编程接口请求时,请求URL就像https://java: 9080/api/顾客/订单一样形成,应该https://application.domain.com/api/customer/order 昂首阔步的页面在

  • MOSN 自定义配置说明。 本文是对 MOSN 自定义配置的说明。 Duration String 字符串,由一个十进制数字和一个时间单位后缀组成,有效的时间单位为 ns、us(或?s)、ms、s、m、h,例如 1h、3s、500ms。 metadata metadata 用于 MOSN 路由和 Cluster Host 之间的匹配。 { "filter_metadata":{ "mo

  • 如果你想自定义 Next.js 的高级配置,可以在根目录下新建next.config.js文件(与pages/ 和 package.json一起) 注意:next.config.js是一个 Node.js 模块,不是一个 JSON 文件,可以用于 Next 启动服务已经构建阶段,但是不作用于浏览器端。 // next.config.js module.exports = { /* config

  • 本文向大家介绍利用python自动生成docker nginx反向代理配置,包括了利用python自动生成docker nginx反向代理配置的使用技巧和注意事项,需要的朋友参考一下 利用python自动生成docker nginx反向代理配置 由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一