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

WSO2 MI Docker与MI Dashboard Docker连接登录报错求助

问题排查与解决方案

从你提供的异常栈追踪来看,报错根源是Dashboard尝试从Micro-Integrator(MI)获取认证Token时,返回的Token列表为空,导致索引越界。以下是具体的排查和修复步骤:

1. 补全Dashboard的MI服务器配置

你当前仅在MI容器中配置了Dashboard的地址,但Dashboard需要明确知晓所有MI节点的地址才能建立连接。需要修改Dashboard容器内的wso2mi-dashboard/conf/deployment.toml,添加所有MI节点的信息:

[mi_servers]
[[mi_servers.server]]
hostname = "172.17.0.x" # 替换为第一个MI容器的IP
port = 9443
username = "admin"
password = "admin"

[[mi_servers.server]]
hostname = "172.17.0.y" # 替换为第二个MI容器的IP
port = 9443
username = "admin"
password = "admin"

2. 验证MI的OAuth认证可用性

登录到Dashboard容器,执行以下命令测试能否从MI获取Token(替换<MI_IP>为实际MI容器地址):

curl -k https://<MI_IP>:9443/oauth2/token -u admin:admin -d "grant_type=password&username=admin&password=admin"
  • 如果返回包含access_token的JSON响应,说明MI的OAuth服务正常;
  • 如果返回错误,检查MI容器的deployment.toml是否开启了OAuth出站认证:
    [apim.oauth_config]
    enable_outbound_auth = true
    
    确认后重启MI容器。

3. 解决SSL证书信任问题(测试环境可用)

由于默认使用自签名证书,Dashboard可能无法信任MI的证书,导致请求失败。可以在Dashboard的deployment.toml中临时禁用SSL验证(生产环境建议导入证书):

[dashboard.security]
ssl_verification_enabled = false

4. 重启容器

修改配置后,分别重启所有MI容器和Dashboard容器,确保配置生效。

5. 验证网络连通性

确认Dashboard容器能正常访问MI容器的9443端口:

telnet <MI_IP> 9443

如果无法连通,检查Docker网络配置,确保所有容器在同一网络内,或端口映射正确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 06:16:03