部署Fineract至OpenShift集群遇访问故障,请求技术支持
问题排查与解决方案
一、前端WAR包构建问题修正
你的前端WAR包构建步骤存在结构缺陷,导致Open Liberty无法正确识别为Web应用:
- 当前打包方式仅将
dist/下的静态资源直接归档,缺少Open Liberty必需的WEB-INF目录及配置文件,容器只会显示默认欢迎页,无法加载前端应用。 - 修正构建流程:
- 在
web-app项目根目录执行构建后,创建WEB-INF目录:npm run build mkdir dist/WEB-INF - 在
dist/WEB-INF下创建ibm-web-ext.xml文件,指定应用上下文根:<?xml version="1.0" encoding="UTF-8"?> <web-ext xmlns="http://websphere.ibm.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-web-ext_1_0.xsd" version="1.0"> <context-root>/WebApp</context-root> </web-ext> - 正确打包WAR包,确保
dist/下的所有内容(包括WEB-INF)都作为WAR根目录内容:jar -cvf web-app.war -C dist/ .
- 在
二、Open Liberty部署配置验证
检查server.xml中的Web应用部署配置:
- 确认存在指向前端WAR包的
<webApplication>节点,且上下文根与配置一致:<webApplication id="web-app" location="web-app.war" contextRoot="/WebApp"/> - 若使用自动部署,需确保WAR包名称或WEB-INF配置的上下文根与访问路径匹配。
三、OpenShift路由与访问路径校验
- 路径匹配调整:
- 前端应用上下文根为
/WebApp,访问Route地址时需附加该路径,或修改Route配置将根路径重定向到/WebApp:spec: host: fineract-frontend-fineract-demo.apps-crc.testing path: /WebApp to: kind: Service name: fineract-frontend port: targetPort: 9080
- 前端应用上下文根为
- Pod内部连通性测试:
进入前端Pod内部,直接curl应用地址验证是否可用:oc rsh <前端Pod名称> curl http://localhost:9080/WebApp/- 若返回404:确认WAR包结构或Liberty配置问题;
- 若返回前端页面:排查Route/Service的路径转发规则。
四、补充:后端连通性前置检查
待前端页面正常显示后,验证baseApiUrls配置:
- 确认后端服务已成功连接Postgres并启动,且Route地址可正常访问。
内容的提问来源于stack exchange,提问作者GarraDembélélé
相关产品推荐
相关产品推荐

