Jeepay开源聚合⽀付系统⽣产环境部署
⽂章⽬录
介绍Jeepay⽀付系统云服务环境部署(Docker等其他部署⽅式,后续推出),以下部署是在阿⾥云4核8G服务器部署,其他环境安装仅供参考。
注:以下部署内容需要有⼀定java和运维经验,如不懂如何部署可联系官⽅收费技术⽀持服务(QQ:13527422)。
环境准备
云服务器推荐购买阿⾥云(腾讯云 或 华为云)的主机,建议不低于以下配置:
操作系统CPU内存带宽其他Linux CentOS 7.X4核8G2M+(或弹性)开发测试环境配置再低些也可以部署
软件环境需安装:
软件名称版本说明
Jdk 1.8java运⾏环境,在jdk1.8下开发,其他版本没测试
Redis 3.2.8分布式缓存,⾼版本也⽀持
MySQL 5.7不低于5.7,⽀持8.0⾼版本
MQ ActiveMQ 或 RabbitMQ 或 RocketMQ消息中间件
Nginx x⾮必须,反向代理使⽤,其他版本也⽀持
以上软件请⾃⾏百度安装,MySQL、Redis、Nginx 的安装推荐使⽤宝塔安装,宝塔下如何安装请⾃⾏查阅⽂档。
服务端部署
1. 项⽬下载
git clone gitee/jeequan/jeepay.git
2. 项⽬编译
mvn clean package -st.skip=true -Ptest
编译成功后,会在每个模块的target下会⽣成下⾯名字的.jar⽂件,如下:
jeepay-manager/target/jeepay-manager.jar
jeepay-merchant/target/jeepay-merchant.jar
jeepay-payment/target/jeepay-payment.jar
3. 项⽬启动
1)使⽤root⽤户登录云服务器,创建jeepay⽤户,切换到jeepay⽤户,并在/home/jeepay⽬录下创建service和upload⽂件⽬录。参考命令如下:
# 创建⽤户
useradd jeepay
# 切换⽤户
sudo jeepay
# 进⼊⽬录
cd /home/jeepay/
# 创建⽬录service和upload
mkdir service&&mkdir upload
2)在service⽬录下创建⽬录manager,merchant,payment,然后将上⾯编译后的.jar⽂件分别传⼊对应的⽬录中。
# 进⼊到service⽬录下
cd /home/jeepay/service
# 创建⽬录manager,merchant,payment
mkdir manager &&mkdir merchant &&mkdir payment
3)初始化数据库,在msyql5.7下创建数据库jeepaydb,⽤户jeepay,密码123456(数据库和账号密码可⾃⼰设定,密码不要过于简单)。
执⾏项⽬下 docs/sql/inti.sql ,确保所有语句执⾏成功。
4)下⾯以启动manager为例
将项⽬下 docs/scpript/app.sh 上传到⾄ /home/jeepay/service/manager 下。
将项⽬下 conf/l 上传⾄ /home/jeepay/service/manager 下。
此时manager⽬录下应该有 jeepay-payment.jar、app.sh、l 三个⽂件。
修改 l 中的配置为你⾃⼰环境对应配置,主要包括服务端⼝、数据库连接配置、Redis配置、ActiveMQ配置等。
server:
port:9217 #设置端⼝为9217
spring:
datasource:
# yml填写url连接串,⽆需将&符号进⾏转义
url: jdbc:mysql://127.0.0.1:3306/jeepaydb?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&autoReconnect=true&use SSL=false
username: jeepay
password:123456
redis:
host:127.0.0.1
port:6379
password:
#activeMQ配置
activemq:
broker-url: tcp://localhost:61616 #连接地址
#⽇志配置参数
logging:
level:
root: info #主⽇志级别
com.jeequan.jeepay: debug #该项⽬⽇志级别,当需要打印sql时请开启为debug
path:./logs #⽇志存放地址
#系统业务参数
isys:
allow-cors:true #是否允许跨域请求[⽣产环境建议关闭,若api与前端项⽬没有在同⼀个域名下时,应开启此配置或在nginx统⼀配置允许跨域]
jwt-secret: P982P8e6472qTc3u #⽣成jwt的秘钥。要求每个系统有单独的秘钥管理机制。
# ⽂件系统配置项(系统内oss,并⾮云oss)
oss-file:
root-path:/home/jeepay/upload #存储根路径(⽆需以‘/’结尾)
启动manager项⽬:sh ./app.sh start
常⽤命令:start 启动程序 stop 停⽌程序 restart 重启程序
查看系统⽇志:tail -f ./logs/mgr.all.log 注:如果⽇志没内容,可能启动失败,查看start.log⽇志:tail -f ./start.log 看问题。
其他 merchant 和 payment 参考manager项⽬启动即可。
前端部署
1. 项⽬下载
git clone gitee/jeequan/jeepay-ui.git
2. 项⽬编译
1)项⽬下载后在jeepay-ui下会有三个⽬录,分别是:
jeepay-ui-manager:运营平台对应的前端代码
jeepay-ui-merchant:商户系统对应的前端代码
jeepay-ui-cashier:⽀付收银台前端代码(只有⽤到聚合扫码收银台时才需要部署)
2)以 jeepay-ui-manager 为例
进⼊到⽬录 jeepay-ui-manager 下,修改服务端接⼝配置。
修改⽂件 .env 中的 VUE_APP_API_BASE_URL 配置,如果前端和服务端部署在同⼀域名下,该值留空,否则需要设置为服务端接⼝地址。3)修改后按如下命令执⾏
安装依赖:npm install
打包⽂件:npm run build
打包后,⽣成dist⽬录,将dist⽬录下所有⽂件上传⾄服务器(建议上传OSS,使⽤CDN加速效果访问效果更好)。
其他 jeepay-ui-manager 和 jeepay-ui-cashier 参考 manager 的打包和部署
Nginx配置
manager项⽬配置
{
listen 8192;
server_jeepay.vip;
index index.html index.htm ;
root /home/jeepay/html/manager;
#解决vue刷新404问题
try_files $uri $uri//index.html;
location /api/
{
proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_set_header Host $host;
mysql下载add produceproxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass mgr-api;
}
}
merchant项⽬配置
upstream mch-api{
server 127.0.0.1:9218 weight=1 max_fails=2 fail_timeout=30s;
}
server
{
listen 8193;
server_jeepay.vip;
index index.html index.htm;
root /home/jeepay/html/merchant;
#解决vue刷新404问题
try_files $uri $uri//index.html;
location /api/
{
proxy_next_upstream http_502 http_504 error timeout invalid_header; proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass mch-api;
#启⽤⽀持websocket连接
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
payment项⽬配置
{
listen 8194;
server_jeepay.vip;
index index.html index.htm;
root /home/jeepay/html/cashier;
location ^~/api/
{
proxy_next_upstream http_502 http_504 error timeout invalid_header;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass pay-api;
}
}
注意:部署时,/home/jeepay/html/cashier ⽬录下⾯还有⼀层cashier,正确是/home/jeepay/html/cashier/cashier下存放index.html⽂件
测试账号
成功部署后,使⽤下⾯账号登录系统。
登录商户系统后可测试⽀付下单流程。
官⽅⽀付体验地址:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论