You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Keycloak从18升级至25.0.2启动报错:命令选项含空格求助

Keycloak 18升级到25.0.2启动报错解决方法

问题原因

你遇到的报错是因为docker-compose的command参数格式不符合Keycloak 25的CLI解析要求:旧版本里把整个启动命令打包成一个字符串,新版本的Keycloak CLI会把这个带空格的字符串当成单个选项,从而触发"选项不应包含空格"的错误。

解决方案

把command里的每个参数拆分成独立的列表项,不要用引号把所有内容包在一起。修正后的docker-compose command配置如下:

command:
  - start-dev
  - --spi-login-protocol-openid-connect-legacy-logout-redirect-uri=true
  - --auto-build
  - --hostname-strict=false
  - -Dkeycloak.profile.feature.account_api=enabled
  - --import-realm

如果想用kc.sh前缀,也可以写成:

command:
  - kc.sh
  - start-dev
  - --spi-login-protocol-openid-connect-legacy-logout-redirect-uri=true
  - --auto-build
  - --hostname-strict=false
  - -Dkeycloak.profile.feature.account_api=enabled
  - --import-realm

原理说明

Keycloak 17之后切换为Quarkus架构,CLI参数解析逻辑更严格。当你把所有参数放在一个字符串里时,CLI会将start-dev --spi-...判定为单个选项名称,其中的空格会被识别为非法格式;拆分后每个参数都是独立选项,就能被正确解析。

内容的提问来源于stack exchange,提问作者MordecaiOD

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 18:15:00