# 前后端分离部署
在某些项目中,由于网络环境复杂,客户要求前端和后端分开来部署,以适应跨网需求。本章节将介绍如何将前端和后端分离部署。在工程的根目录下,内置了执行打包的脚本,我们需要先将前后端资源分别打包出来。
# 打包资源
支持在 mac,linux 以及 windows 上执行打包脚本。 以在 mac 上执行 .sh 为例(windows执行 .bat 脚本)。
#如遇到权限问题,授权执行脚本
chmod 777 build-*
# 构建前端资源
build-ui.sh
# 构建后端资源(默认是构建jsw,可以调整脚本打jar包)
build-api.sh
执行后,将会在 ui/dist/build 目录下生成前端资源包。在 api/target/webapp/ 目录下生成了后端资源包。
# 后端部署
- 修改
conf/config.yml配置(jsw方式)
后端部署方式可以参考前面的三种方式,这里不再赘述。 这里重点指出 config.yml 的配置。 以下几个 url 的配置需要使用绝对地址。
apiBaseUrl: "https://domain:port/"
orchServerBaseUrl: "https://domain:port/serverless"
resourceBaseUrl: "https://domain:port/"
serviceBaseUrl: "https://domain:port/service"
authorizeUrl: "https://domain:port/$perms"
orchBaseUrl: "https://domain:port/orchestration"
file.upload: "https://domain:port/${file.upload}"
file.download: "https://domain:port/${file.download}"
# 前端部署
找到目录下的 config.js 文件,修改其中的 configUrl 配置项,指向后端的服务地址
window.config = {
configUrl: 'https://domain:port/config.json' // 后端服务地址,这里需要用绝对地址。
};
将静态资源包上传到服务器上部署,可放到 Nginx、Apache、Tomcat 等服务器上。
# 可选配置
- 修改 pom.xml (可选)
在 pom.xml 中,将 copy-ui 部分配置去掉,去掉后将不会打包到后端部署包里面。
