外观
环境
部署项目之前请确定您的电脑开发环境
- maven
- Git
- jdk 11 +
- eclipse 等IDE
- mysql8 或其他主流数据库
- redis
- 工作空间字符集 UTF-8
- maven 私服使用 各个工程中 root pom 中的私服地址
开发环境部署
安装前必读
建议使用公司自己的私服,将以下需要 install 的模块 deploy 到私服,这样可以避免所有人都去下载、安装不相关的模块源码
在 agilebpm 目录下执行
mvn clean install -DskipTests
安装基础功能相关模块(如果 ab-spring-boot-app 安装失败请忽略)在 ab-wf 目录下执行
mvn clean install -DskipTests
安装流程模块, 建议 install 到公司私服(若没有该模块源码则需要将相关jar包上传到公司的私服)创建数据库,执行
/agile-bpm/doc/sql/mysql/full/agilebpm_full.sql
(不要执行upgrade脚本,upgrade 为升级时使用的脚本)修改数据库、Redis 配置文件
/ab-spring-boot-app/src/main/resources/application.yml
通过 Main 方法启动后端服务 /ab-spring-boot/ab-spring-boot-app/src/main/java/com/dstz/AbSpringBootApp.java
如果启动有异常,install 无异常,请尝试刷新 maven 依赖。
- 开发环境使用 node 运行 agilebpm-ui-v5 前端项目,请参考前端开发指导 部署安装。
Linux 服务器部署
前端打包
shell
# 进入目录
$ cd agilebpm-ui-v5
# 安装依赖库
$ npm install
# 构建
$ npm run build
# 发布已打包资源
$ cd dist
$ tar -czf ../agilebpm-ui-v5.tgz *
$ cd ..
将已打包好的
agilebpm-ui-v5.tgz
上传至服务器
后端打包
shell
# 进入目录
$ agile-bpm
# 执行Maven打包命令
$ mvn clean package -DskipTests
发布JAR包
使用
XFTP
或其他工具将JAR包上传至服务器
JAR路径:ab-spring-boot/ab-spring-boot-app/target/ab-spring-boot-app-X.X.X-XXX.jar
部署
启动后端应用
假设您已安装JRE环境
shell
$ java \
-Xms2g \
-Xmx2g \
-XX:MetaspaceSize=256m \
-XX:MaxMetaspaceSize=256m \
-jar ab-spring-boot-app-X.X.X-XXX.jar
指定配置文件启动
$ java \
-Xms2g \
-Xmx2g \
-XX:MetaspaceSize=256m \
-XX:MaxMetaspaceSize=256m \
-jar ab-spring-boot-app-X.X.X-XXX.jar \
--spring.config.location=xxx.yml
配置前端应用
假设您已安装Nginx
- 创建目录
$ mkdir -p /var/www/html/agilebpm-ui-v5
- 解压缩包
agilebpm-ui-v5.tgz
$ tar -zxf agilebpm-ui-v5.tgz -C /var/www/html/agilebpm-ui-v5 --no-same-permissions --no-same-owner
- 配置虚拟主机
/etc/nginx/conf.d/agilebpm.conf
Nginx
server {
listen 80;
server_name localhost;
client_max_body_size 10m;
// 【前端资源 路由至前端入口文件 index.html 】
location / {
try_files $uri $uri/ /index.html last;
index index.html index.htm;
root /var/www/html/agilebpm-ui-v5;
}
// 【后端API请求的路由配置,请修改后台地址 】
location /api/ {
proxy_pass_header Server;
proxy_set_header Host $host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Scheme $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8080/;
}
}
- 启动Nginx
shell
# 测试配置文件是否有错误
$ nginx -t
# 重启Nginx
$ systemctl restart nginx
- 访问
http://xxxxx