首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Keycloak/Undertow/JBoss-CLI -从环境变量设置"web-context“

Keycloak/Undertow/JBoss-CLI -从环境变量设置"web-context“
EN

Stack Overflow用户
提问于 2017-10-23 23:02:48
回答 1查看 920关注 0票数 4

我有一个关于Wildfly/Undertow和JBoss-CLI设置Keycloak的web上下文的问题。

环境变量本身似乎没有被解析,但其他环境变量似乎被解析了。

我已经创建了以下CLI脚本:

代码语言:javascript
复制
/subsystem=keycloak-server/:write-attribute(name=web-context,value=${env.KEYCLOAK_WEB_CONTEXT:auth})

这是由docker构建执行的,并且standalone.xml中的结果看起来也很好:)

当启动Keycloak-Service时,它不会解析变量,它只会使用变量本身:

代码语言:javascript
复制
14:30:30,556 INFO  [org.wildfly.extension.undertow] (ServerService
Thread Pool -- 60) WFLYUT0021: Registered web context:
'/${env.KEYCLOAK_WEB_CONTEXT:auth}' for server 'default-server'

在使用jboss-cli.sh连接到容器并请求我获得的变量后:

代码语言:javascript
复制
[standalone@localhost:9990 subsystem=keycloak-server] ls -l
ATTRIBUTE VALUE TYPE
web-context ${env.KEYCLOAK_WEB_CONTEXT:auth} STRING

使用已解析表达式:

代码语言:javascript
复制
[standalone@localhost:9990 subsystem=keycloak-server] ls -l --resolve-expressions
ATTRIBUTE VALUE TYPE
web-context helloworld/auth  STRING

到目前为止,一切看起来都很好。你知道为什么Undertow从变量开始而不是解析变量吗?它是一个潜在的bug吗?

致以最良好的问候,并感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2020-06-12 00:09:11

我知道这是两年前的事了,但我最近试图解决这个问题,所以我想如果有人遇到这个问题,我会跟进的。

不要在表达式中使用${env.VAR}模式,而是在脚本顶部使用它们作为变量赋值。从父示例中借用:

代码语言:javascript
复制
set CONTEXT=${env.KEYCLOAK_WEB_CONTEXT}
/subsystem=keycloak-server/:write-attribute(name=web-context,value=$CONTEXT)

环境变量作为$CONTEXT的值被拉入,即使我在写属性行中使用它时它从来都不起作用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46892613

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档